主要内容

orderfields

结构阵列的订单字段

描述

例子

S.= orderfields(S1订购领域S1按名字。

由于字段名称只能包含字母,数字和下划线,因此此语法以ASCII顺序排列字段名称。所有大写字母都在所有小写字母之前。

例子

S.= orderfields(S1S2返回副本S1与其字段重新排序以匹配字段的顺序S2.输入结构阵列S1S2必须具有相同的字段名称。

例子

S.= orderfields(S1C匹配输入数组中指定的名称的顺序C.每个领域的名称S1必须出现一次C

例子

S.= orderfields(S1P.匹配排列载体指定的顺序P.

如果S1N字段,然后是元素P.1通过N,以任何顺序排列的。例如,如果S1有三个领域和P.[3 1 2],然后是第三个领域S1输出的第一个字段是什么S..此语法用于以相同的方式对多个结构数组进行排序。

例子

[S.] = OrderFields(___还返回排列矢量。元素1通过N,按顺序排列,代表字段顺序的变化。您可以使用此语法与先前语法的任何输入参数。

例子

全部收缩

创建具有多个字段的结构。

S1 =结构('B',1,'B',2,'一种'3,'一种'4)
S1 =结构与字段:B:1 B:2 A:3 A:4

订购字段。此语法以ASCII顺序按其名称订购字段。

S = orderfields (S1)
S =结构与字段:答:4 B:2 A:3 B:1

创建具有相同字段的两个结构,不同的订单。字段名称是相同的,但字段值不同。

S1 =结构('B',1,'B',2,'一种'3,'一种'4)
S1 =结构与字段:B:1 B:2 A:3 A:4
S2 =结构('一种',0,'B'20,'B'10,'一种',0)
S2 =结构与字段:答:0 B:20 B:10 A:0

订购字段S1匹配字段的顺序S2

s = OrderFields(S1,S2)
S =结构与字段:答:3 B:1 B:2 A:4

创建一个结构。

data.x = linspace(0,2 * pi);data.y = sin(data.x);data.title ='y = sin(x)'
data =结构与字段:x:[1x100双] y:[1x100双]标题:'y = sin(x)'

通过在单元格数组中列出它们的名称来对字段进行排序。

c = {'标题''X''是'};data = orderfields(数据,C)
data =结构与字段:Title: 'y = sin(x)' x: [1x100 double] y: [1x100 double]

创建一个结构。

data.x = linspace(0,2 * pi);data.y = sin(data.x);data.title ='y = sin(x)'
data =结构与字段:x:[1x100双] y:[1x100双]标题:'y = sin(x)'

通过以不同的顺序列出其原始位置来命令字段。例如,移动第三字段,使其是输出结构的第一个字段。

p = [3 1 2];数据= OrderFields(数据,P)
data =结构与字段:Title: 'y = sin(x)' x: [1x100 double] y: [1x100 double]

创建一个结构。

data1。x = linspace(0, 2 *π);data1。y =罪(data1.x);data1。title ='y = sin(x)';

使用该结构重新排序orderfields功能。将新的字段顺序存储在排列载体中

(年代,撅嘴)= orderfields (data1、{'标题''X''是'})
S =结构与字段:Title: 'y = sin(x)' x: [1x100 double] y: [1x100 double]
撅嘴=3×13 1 2

使用相同字段创建第二个结构。

data2.x = data1.x;data2.y = cos(data2.x);data2.title ='y = cos(x)';

重新排序字段data2.使用.如果您有许多具有相同字段名称的结构,那么您可以使用POUT以相同的方式重新排序它们。

S2 = OrderFields(Data2,Pout)
S2 =结构与字段:标题:'y = cos(x)'x:[1x100 double] y:[1x100双]

输入参数

全部收缩

输入结构,指定为结构数组。

字段顺序按结构,指定为结构阵列。S2具有与之相同的领域S1但以不同的顺序指定它们。

字段顺序按名称指定为字符向量或字符串数​​组的单元格数组。名字C必须匹配字段名称S1

字段顺序按号码,指定为数字矢量。数字必须是整数1通过N, 在哪里N是人数S1

输出参数

全部收缩

重新排序的结构,作为结构数组返回。S.具有与之相同的领域S1但它们的顺序可能不同。

输出字段顺序,作为数字矢量返回。元素1通过N, 在哪里N是人数S1.整数的排列表示字段顺序的变化。

提示

  • orderfields功能只能订购顶级字段。它不是递归。

之前介绍过的R2006a