找到一次出现的角色

时间:2014-09-04 13:08:08

标签: regex

我正在努力解决特定的正则表达式问题。我想在文本中找到一个字符X的出现,这个字符不会出现在另一个X的旁边。

"Hello X!"         //- 1 find
       ^
"Hello XX!"        //- No find

"X! Hello! X!"     //- 2 finds
 ^         ^
"Hello XXX!"       //- No find

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

您可以使用否定外观(只要您不使用Javascript):(?<!X)X(?!X)或者,如果您使用的是Javascript,(?:[^X]|^)X(?:[^X]|$)

PCRE Example

JavaScript Example