我正在尝试在MATLAB中使用regexp来搜索单元格数组中字符串中的两个单词。我的单元格数组包含
strings={'1abc_2def_ghi_AB_12A','1abc_2def_ghi_BD_19A','1abc_2def_ghi_CD_16A',}
如何构建表达式以在单元格数组中搜索包含'ghi'
和'12'
的字符串?
提前感谢您的任何帮助。
答案 0 :(得分:1)
这个怎么样?
result = find(~cellfun(@isempty, regexp(strings, 'ghi')) & ...
~cellfun(@isempty, regexp(strings, 'AB')));
或者,使用单个正则表达式
result = find(~cellfun(@isempty, regexp(strings, '(ghi.*AB|ghi.*AB)')));