使用 contains 函数选择列名称你好,
我喜欢选择名称包含字符串的多个列。 我尝试了下面的脚本,没有错误,但未选择列。
col_list = dt3 << get column names(string);
for( i = 1, i <= N Items( col_list ), i++,
If(Contains( col_list[i], "A_B_C" ),
Column(col_list[i] ) << Set Selected (1)
)
);
当我检查 col_list 时,它包含整个数据表中的所有列。 我感谢您的帮助。 谢谢
回复:使用 contains 函数选择列名称感谢吉姆的帮助。 现在效果很好。
回复:使用 contains 函数选择列名称Contains() 函数接受第二个参数并查看第一个参数以查看是否可以在第一个参数中找到第二个参数的值。因此,如果 Contains() 函数是
包含("A_B_C", Col_List[i])
并且 Col_List[i] = "A_B_C" 的值将采用值 "A_B_C" 并查看第一个参数以查看是否可以找到它。它可以,因为第一个参数包含“A_B_C”。现在,如果列名是“A”,并且您执行相同的比较,则 Contains() 函数将采用第二个参数“A”并查看第一个参数“A_B_C”,它会发现“A”是在第一个论点中,因此这将是一个真实的比较。
因此,Contains() 函数的原始形式就是我们想要的
Names Default To Here( 1 );
dt = Current Data Table();
Col_List = dt << Get Column Names("String");
for(i = 1, i <= N Items(Col_List),i++,
If(Contains(Col_List[i], "A_B_C"),
Column(Col_List[i]) << Set Selected(1);
);
);回复:使用 contains 函数选择列名称可能有几件事正在发生。
一种可能性是在脚本运行之前选择一列?
尝试在定义 dt 之后将其添加到脚本的开头。
dt << Clear Selection;
回复:使用 contains 函数选择列名称谢谢。 我尝试了你的脚本,但使用了不同的示例,但仍然有问题。
名称默认为此处( 1 );
dt = 当前数据表();
Col_List = dt << 获取列名称("String");
for(i = 1, i <= N 项(Col_List),i++,
如果(包含(“A_B_C”,Col_List [i]),
Column(Col_List[i]) << 设置选定项(1);
);
);
选择列 A_B_C 和 A。 我不明白为什么。 我感谢您的帮助。 我已附上图像结果。
回复:使用 contains 函数选择列名称@在,
我认为您将 Contains() 参数颠倒了。
dt = Current Data Table();
Col_List = dt << Get Column Names("String");
for(i = 1, i <= N Items(Col_List),i++,
If(Contains("A_B_C",Col_List[i]),
Column(Col_List[i]) << Set Selected(1);
);
);