我想写一个正则表达式,它匹配由分号和可选空格分隔的多个单词,或者单独一个单词,而不包含任何相邻的分号。
例如,我想匹配bla
和bla ; bla
,但我不想匹配:bla . bla
或bla;
,即分号应该只是如果它出现在两个单词之间,而不是在字符串的末尾,则捕获。
答案 0 :(得分:5)
试试这个匹配所有“;”的\w\s*?([;])(?=\s*?\w)
其前面和后面是空格和单词字符
答案 1 :(得分:0)
您可以使用:
[a-z]+(?:;[a-z]+)?
如果你想要一个或两个以上的单词,只需要替换? * *
(注意:这种模式不涉及空格和案例或其他一些事情。如果需要,你必须添加它们)