【发布时间】:2013-04-25 22:17:14
【问题描述】:
我正在努力寻找使用正则表达式匹配两个连续的完整单词的解决方案。我有一个文本框,用户可以在其中输入他们的搜索条件,并用引号括起来以进行精确匹配。然后引号和空格(如果有)被 RegEx 表达式替换。这是一个例子:
用户输入:“苹果橙”
转换为:
\bApple\W+(?:\w+\W+){1,6}?Orange\b
然后,我的 RegEx 匹配将基于此转换后的标准。说明来自 www.regular-expressions.info/near.html
也许我的做法完全错误?我正在使用视觉工作室。任何帮助表示赞赏。
【问题讨论】:
-
您使用什么语言?您可以在 C# 中使用 String.Contains 或 String.IndexOf 之类的东西,而不是正则表达式。
-
我使用 RegEx 是因为它能够匹配整个单词,我不确定 String.Contains 或 String.IndexOf 是否可以做到这一点?
-
您可以通过在开头和结尾附加一个空格来搜索整个单词,尽管在您的情况下,如果我理解正确的话,它更像是搜索一个短语。
-
添加额外空格的好点,简单方便的解决方案!