图片缩略图

自然秩序行排序

版本3.3.0 (16 KB) 斯蒂芬。
单元格/字符串/分类数组的字母数字行,具有可自定义的数字格式。

1.4 k下载

更新2021年7月14日

查看许可协议

编者按:这个文件被选为MATLAB中心本周精选

使用NATSORTFILES对任何文件名或文件夹名进行排序:
使用NATSORT对字符串/单元格数组中的元素进行排序:
# # # # # #
对字符串/单元格/类别数组的行进行字母数字排序。类似于MATLAB的SORTROWS函数,但考虑任何数字子字符串的值。例如:比较
b> x = {“x2”“十”“x10”' 0 'x1的' 0 '“x2”' 2 '};
> > sortrows (X)数字顺序错误
ans =
x1的' 0 '
“x10”' 0 '
“x2”“十”
“x2”' 2 '
> > natsortrows (X)数字顺序正确
ans =
x1的' 0 '
“x2”' 2 '
“x2”“十”
“x10”' 0 '
默认情况下,NATSORTROWS将所有连续的数字解释为整数,可以使用正则表达式指定数字子串识别:参见NATSORT了解详细信息。
###文件依赖###
自然顺序排序由函数NATSORT (File Exchange 34464)提供。NATSORTROWS支持NATSORT的所有可选输入。金宝app
# # # # # #例子
>> a = {“B”' 2 '“X”“一个”“100”“X”“B”“十”“X”“一个”' 2 '“Y”“一个”“20”“X”};
> > sortrows (A)%错误的号码顺序:
ans =
“一个”“100”“X”
“一个”' 2 '“Y”
“一个”“20”“X”
“B”“十”“X”
“B”' 2 '“X”
> > natsortrows (A)
ans =
“一个”' 2 '“Y”
“一个”“20”“X”
“一个”“100”“X”
“B”' 2 '“X”
“B”“十”“X”
> > natsortrows ([],“下”
ans =
“B”“十”“X”
“B”' 2 '“X”
“一个”“100”“X”
“一个”“20”“X”
“一个”' 2 '“Y”
> > sortrows (A,[2、3])错误的号码顺序:
ans =
“B”“十”“X”
“一个”“100”“X”
“一个”' 2 '“Y”
“B”' 2 '“X”
“一个”“20”“X”
> > natsortrows([],[2、3])
ans =
“一个”' 2 '“Y”
“B”' 2 '“X”
“B”“十”“X”
“一个”“20”“X”
“一个”“100”“X”
>> b = {“ABCD”' 3 e45 '“67.8”“正”“-12”“+ 9”“南”};
> > sortrows (B)%错误的号码顺序:
ans =
“+ 9”
“正”
“-12”
' 3 e45 '
“67.8”
“ABCD”
“南”
> > natsortrows (B,(- +) ? (NaN |正| \ d + \ ? \ d * (E - +] ? \ d +)吗?)”
ans =
“-12”
“+ 9”
“67.8”
' 3 e45 '
“正”
“南”
“ABCD”

引用作为

斯蒂芬(2021)。自然秩序行排序(//www.tatmou.com/matlabcentral/fileexchange/47433-natural-order-row-sort), MATLAB中央文件交换。检索

MATLAB版本兼容性
创建R2010b
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!