【问题标题】:How to find a substring in a cell array如何在元胞数组中查找子字符串
【发布时间】:2015-03-30 22:34:40
【问题描述】:

我正在尝试在 MATLAB 中使用正则表达式在元胞数组的字符串中搜索两个单词。我的单元格数组包含

strings={'1abc_2def_ghi_AB_12A','1abc_2def_ghi_BD_19A','1abc_2def_ghi_CD_16A',}

我将如何构建表达式来搜索包含'ghi''12' 的字符串的元胞数组?

提前感谢您的帮助。

【问题讨论】:

  • 您的问题在哪里实施?找到匹配的正则表达式或迭代单元格?
  • 我的问题是找到一个匹配的正则表达式。

标签: regex string matlab cell-array


【解决方案1】:

这个怎么样?

result = find(~cellfun(@isempty, regexp(strings, 'ghi')) & ...
    ~cellfun(@isempty, regexp(strings, 'AB')));

或者,使用单个正则表达式,

result = find(~cellfun(@isempty, regexp(strings, '(ghi.*AB|ghi.*AB)')));

【讨论】:

    猜你喜欢
    • 2015-04-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-27
    • 1970-01-01
    • 1970-01-01
    • 2011-02-07
    相关资源
    最近更新 更多