我的字符串中有一系列数字,我想用RegEx选择它们。但是,如果某个数字序列前面有“@
”字符(没有引号),那么它应该跳过它。我不知道如何在Javascript中解决它。
我知道我应该使用Lookahead检查条件:
(?!@[a-z])
但上述规则仅用于不选择前面带@的数字,那么选择那些前面没有@
的数字呢?我需要说RegEx跳过@\d
,而只选择(?!@\d)
。我该怎么做?
例如我有这个字符串:
helloMrRobert5555AndGoodByeMrSteve@8888
预期产出:
5555
答案 0 :(得分:0)
我认为你可以使用这样的简单正则表达式(如果数字的长度是固定的):
/[^@](\d{4})/g
并使用替换$1
。
如果长度不固定,请使用/@\d+|(\d+)/g
。