通过负向前瞻选择字符串?

时间:2013-11-18 11:08:31

标签: javascript regex

我有这个结构:

[digit][\w+][\#]

#不是强制性的。

示例:(1是数字,只是为了简单起见)

  • 1bbbb#

  • 1bbbb

它也可以重演:

1bbbb#1cccccc

问题:

我希望得到所有未来字符中的字符#字符。

示例:

  • 1bbbb# - 零结果(因为未来字符中有#
  • 1bbbb - 想要的结果:1bbbb
  • 1bbbb#1cccccc - 想要的结果:1cccccc
  • 1bbbb#1cccccc#1kkk - 想要的结果:1kkk

我尝试了什么:

1(?!.+\#)

但这显然只返回了所需结果的第一个字符:

enter image description here

有任何帮助吗? (http://regexr.com?3783k

(我希望看到一个负面的前瞻性解决方案)。

1 个答案:

答案 0 :(得分:2)

这有用吗?

1\w+(?!.*\#)

1bbbb匹配1bbbb

1bbbb#没有结果

1bbbb#1ccccccc匹配1ccccccc

1bbbb#1ccccccc#没有结果

1bbbb#1ccccccc#1kkkkkkk匹配1kkkkkkk