Regex 正则表达式仅在引号中匹配单词

Regex 正则表达式仅在引号中匹配单词,regex,eclipse,Regex,Eclipse,我正试图准备一个正则表达式来匹配引号中的单词 i、 e如果文本如下所示,我希望在引号中匹配HelloWorld,但不匹配不在引号中的另一个。(应匹配第二个HelloWorld实例,但不匹配第一个) 用例: 我需要在引号中查找文本HelloWorld,而不是在我通过正则表达式在Eclipse IDE中搜索时用作变量名或类名的其他HelloWorld实例。您可以使用以下内容 'HelloWorld " Showing HelloWorld"'.match(/"(.*?)"+/g); //["" S

我正试图准备一个正则表达式来匹配引号中的单词

i、 e如果文本如下所示,我希望在引号中匹配
HelloWorld
,但不匹配不在引号中的另一个。(应匹配第二个
HelloWorld
实例,但不匹配第一个)

用例:


我需要在引号中查找文本
HelloWorld
,而不是在我通过正则表达式在Eclipse IDE中搜索时用作变量名或类名的其他
HelloWorld
实例。

您可以使用以下内容

'HelloWorld " Showing HelloWorld"'.match(/"(.*?)"+/g);  //["" Showing HelloWorld""]

作为一种快速而肮脏的可能性,您可以使用以下命令扫描字符串:

/"[^"]*?"/
这将匹配字符串中的第一对引号(和包含的文本)(注意使用
*?
进行“最小”匹配)。在循环中全局执行此操作以提取引号内的文本。每次您匹配一个新引用的片段时,检查它是否包含您要查找的内容(可能使用另一个正则表达式)


如果字符串中有转义引号,这将失败,尽管这当然可以处理。

如果所有模式都是

“显示HelloWorld”

你可以用这个来匹配

/".+\s(\w+)"/g
如果您的语言支持[:alpha:]

您只能匹配字母

/".+\s([[:alpha:]]+)"/g

仅针对此字符串实例,匹配\w+可以同时获得字母和数字

,或者您正在询问如何匹配引号内的文本?@TheKojuEffect您使用的是什么语言?@HamZa我的代码是Java。我不认为这有什么关系,因为我只想从EclipseIDE中搜索。@TheKojuEffect哦,是的,如果你想找到多个位于双引号之间的
HelloWorld
实例,你可以使用这种模式
(?:(?:“|\G(?)?
/".+\s([[:alpha:]]+)"/g