我有一个国家/地区列表,每个国家/地区名称都在单引号之间,如下所示
'United States'
我正在使用这个正则表达式来匹配它们:'(.*?)'
效果很好,直到我找到一个更晦涩的国家/地区名称,例如 'Cote d'Ivoire'
,它最终匹配 Cote d
如何更改当前的正则表达式以正确匹配国家/地区名称,例如我刚刚作为示例给出的国家/地区名称?
最佳答案
您可以尝试强制正则表达式引擎匹配非单词边界位置处的最终 '
:
'(.*?)'\B
请参阅regex demo
当第一个 '
前面有非单词边界、后面有单词边界时,您可以匹配第一个 '
,并且类似地匹配结束的 '
:
\B'\b(.*?)\b'\B
关于regex - VB.Net正则表达式,获取可能包含单引号的单词,即单引号之间的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44519675/