【发布时间】:2014-04-24 04:02:01
【问题描述】:
我正在尝试准备一个正则表达式来匹配引号中的单词。
即,如果文本如下,我想匹配 HelloWorld 在引号内,而不是另一个不在引号内的匹配。 (应该匹配 HelloWorld 的第二个实例,但不是第一个)
HelloWorld " Showing HelloWorld"
用例:
当我通过正则表达式在 Eclipse IDE 中搜索时,我需要在引号内找到文本 HelloWorld,而不是用作变量名或类名的其他 HelloWorld 实例。
【问题讨论】:
-
仅针对此字符串实例,还是您要问如何匹配引号内的文本?
-
@TheKojuEffect 你用的是什么语言?
-
@HamZa 我的代码是用 Java 编写的。我认为这无关紧要,因为我只想从 Eclipse IDE 中搜索。
-
@TheKojuEffect 哦,是的,如果你想在双引号之间找到几个
HelloWorld的实例,你可以使用这种模式(?:(?:"|\G(?<!^))[^"\r\n]*?)\KHelloWorld(?=[^"\r\n]*"(?:(?:[^"\r\n]*"){2})*),see demo。问题是 Java 不支持\K转义序列。