VB.Net正则表达式,获取单引号之间可能包含单引号的单词

时间:2017-06-13 11:01:53

标签: regex vb.net

我有一个国家/地区列表,每个国家/地区名称都在单引号之间,如此

'United States'

我正在使用此正则表达式来匹配它们:'(.*?)'

效果很好,直到我找到一个更加模糊的国家名称,如'Cote d'Ivoire',它最终匹配Cote d

如何更改当前正则表达式以正确匹配国家/地区名称(例如我刚才提供的名称)?

1 个答案:

答案 0 :(得分:2)

您可以尝试强制正则表达式引擎匹配非字边界位置的最终'

'(.*?)'\B

请参阅regex demo

您可以匹配第一个',前面是非字边界,后跟字边界,并且类似地匹配结束'

\B'\b(.*?)\b'\B

请参阅another regex demo