【问题标题】:Finding a string in a phrase在短语中查找字符串
【发布时间】:2020-06-14 05:19:24
【问题描述】:

我正在使用regexpi 在短语中查找字符串。但我也遇到了一些我从未想过的不同。

假设我需要找到的词是anandalaknandaki

str1 = {'anandalak'};
str2 = {'nanda'};
button = {'nanda'};

以下两个都返回我逻辑 1:

~cellfun('isempty',regexpi(str1,button))
~cellfun('isempty',regexpi(str2,button))

我怎样才能避免这种情况?我在第一种情况下需要逻辑 0,在第二种情况下需要逻辑 1。

【问题讨论】:

  • 所以你想要logical 0 在第一种情况下,logical 1 在第二种情况下。如果我错了,请纠正我。
  • 没错,我需要你描述的那个

标签: regex string matlab


【解决方案1】:

您可能需要使用word-boundaries(\<\>) 才能获得所需的匹配项。

你可以试试:

str1 = {'anandalak'}
str2 = {'nanda'}
button = {'\<nanda\>'} % Notice this 
~cellfun(@isempty,regexpi(str1,button)) % Returns ans = 0 No match
~cellfun(@isempty,regexpi(str2,button)) % Return ans = 1 Exact match

您可以在here.找到上述实现的示例运行结果

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-03
    • 1970-01-01
    相关资源
    最近更新 更多