Regex 正则表达式匹配引号外的给定单词

Regex 正则表达式匹配引号外的给定单词,regex,match,quote,Regex,Match,Quote,我需要能够匹配引号之外的单词“internet”。Eg Internet "InternetFormula works and it's internetformula" Internet "The internet works" 但我不知道怎么做,因为正则表达式很复杂,我找不到类似的东西 \bInternet\b(?=(?:[^"]*"[^"]*")*[^"]*$) 你可以试试这个。看演示 根据,您可以简单地使用以下内容: "[^"]*"|\b(Internet)\b 假设你的正则表达

我需要能够匹配引号之外的单词“internet”。Eg

Internet "InternetFormula works and it's internetformula"
Internet "The internet works"
但我不知道怎么做,因为正则表达式很复杂,我找不到类似的东西

\bInternet\b(?=(?:[^"]*"[^"]*")*[^"]*$)
你可以试试这个。看演示

根据,您可以简单地使用以下内容:

"[^"]*"|\b(Internet)\b


假设你的正则表达式引擎是Perl兼容的,那么所有的积分都会转到
Nathan Tuggy
中,因为这个链接非常类似于它可能是一个复制品。请注意,如果你有代码来处理返回的匹配项,并且只关注组1,那么这个技术是有效的。如果要使用替换(无需额外处理)将找到的单词替换为另一个单词,则(根据我的测试)不起作用。请注意,只要找到的匹配后没有不匹配的引号,此技术就可以工作。根据多行设置,这将选择
互联网
的所有案例,而不考虑引号,或仅选择
互联网
在引号内的案例。有没有一种方法可以让它不受限制地工作?@Ben答案是基于有平衡引用的假设……)别担心。我只是想指出这个限制,因为它被重定向到了这个。在我注意到局限性之前,我一直面临挑战。