【发布时间】:2012-01-27 15:50:11
【问题描述】:
我正在使用使用正则表达式搜索文本文件的软件。匹配正则表达式的文件随后可供检查。
我需要搜索两个字符串必须存在的情况,第二个字符串必须出现在第一个字符串之后,但在第一个字符串之后不超过 x 个字符。在这种情况下,第二个字符串的最后一个字符始终是撇号。
例如,查找字符串一“ABC”和字符串二“XY'”,其中字符串二必须在字符串一结束后不超过 5 个位置开始:
"ABCxxxxXY" // match
"ABCxxxxxxxxxXY" // not a match.
另一种可能更好的方法是将匹配定义为包含字符串一,然后在下一个撇号之前立即包含“XY”。
"ABCxxxxxxxxXY" // match.
"ABCxxxxxxxxx'xxxxxXY" // not a match.
谢谢
迈克·托马斯
【问题讨论】:
-
您找到相关答案了吗?您的示例似乎相互矛盾,因此可能会引起混淆。
-
where string two must begin no more than 5 spaces after the end of string one。您是说 places 而不是 spaces 吗? -
我看到您已经提交了对 Shiplu 答案的建议编辑。它应该应用于问题。
-
@KeithThompson - 我已经编辑了提示以反映建议的更改。
-
@user772047 - 如果这些答案中的任何一个满足问题,请选择一个作为正确答案,以便可以关闭此问题。
标签: regex