正则表达式。如何返回较小的结果

时间:2015-07-15 15:00:02

标签: regex

我有这个正则表达式in[^\s]。它捕获任何三个字符序列,其中包含" in"和任何角色,但空间。

测试用例的结果:

integer     -> int
inline      -> inl
instruction -> ins
in          -> "nothing"

现在我想要的是这个正则表达式会考虑,第三个字符不是空格,但不会标记第三个字符

我希望它能像这样工作:

integer     -> in
inline      -> in
instruction -> in
in          -> "nothing"

1 个答案:

答案 0 :(得分:1)

你可以使用积极的前瞻:

in(?=\S)

(?=\S)是一个积极的前瞻,确保in后跟非空格。

\S[^\s]相同。

最好使用单词边界来避免在单词中间匹配in

\bin(?=\S)

RegEx Demo