如何在元胞数组中查找子字符串
How to find a substring in a cell array
我正在尝试在 MATLAB 中使用正则表达式在元胞数组的字符串中搜索两个单词。我的元胞数组包含
strings={'1abc_2def_ghi_AB_12A','1abc_2def_ghi_BD_19A','1abc_2def_ghi_CD_16A',}
我将如何构建表达式以在元胞数组中搜索同时包含 'ghi'
和 '12'
的字符串?
在此先感谢您的帮助。
这个怎么样?
result = find(~cellfun(@isempty, regexp(strings, 'ghi')) & ...
~cellfun(@isempty, regexp(strings, 'AB')));
或者,使用单个正则表达式,
result = find(~cellfun(@isempty, regexp(strings, '(ghi.*AB|ghi.*AB)')));
我正在尝试在 MATLAB 中使用正则表达式在元胞数组的字符串中搜索两个单词。我的元胞数组包含
strings={'1abc_2def_ghi_AB_12A','1abc_2def_ghi_BD_19A','1abc_2def_ghi_CD_16A',}
我将如何构建表达式以在元胞数组中搜索同时包含 'ghi'
和 '12'
的字符串?
在此先感谢您的帮助。
这个怎么样?
result = find(~cellfun(@isempty, regexp(strings, 'ghi')) & ...
~cellfun(@isempty, regexp(strings, 'AB')));
或者,使用单个正则表达式,
result = find(~cellfun(@isempty, regexp(strings, '(ghi.*AB|ghi.*AB)')));