正则表达式匹配一个字母,但不是如果该字母开头的话

时间:2017-09-06 00:19:26

标签: regex

我一直试图在regex101上找到这个,但没有运气。例如,我想匹配系统中的第二个's',但是如果s位于单词的开头则不是。所以我想匹配mos中的“s”,或者回答,但我不想匹配太空中的s。

这是我到目前为止所尝试的:

s*(?<!\W)

有几个变种,但还没有运气。

1 个答案:

答案 0 :(得分:2)

消极的外观是要走的路。我想你需要这个:

(?<!\b)s

详情

  • (?<!...) - 负面的背后隐藏
  • \b - 字边界
  • s - 要匹配的字母s(如果之前有字边界,则不会匹配)

Regex101 demo