繁体   English   中英

如何匹配不包含特定字符的字符序列?

[英]How to match a sequence of characters not preceded by specific character?

我的字符串中有一系列数字,我想用RegEx选择它们。 但是,如果某些数字序列前面带有' @ '字符(不带引号),则应跳过该字符。 我不知道该如何用Javascript解决。

我知道我应该使用Lookahead来检查条件: (?!@[az])但是以上规则仅用于不选择@开头的数字,如何选择不使用@开头的数字呢? 我需要对RegEx说跳过@\\d ,而是仅选择(?!@\\d) 我应该怎么做?

例如我有这个字符串:

helloMrRobert5555AndGoodByeMrSteve@8888

预期产量:

5555

我认为您可以使用像这样的简单正则表达式(如果数字的长度是固定的):

/[^@](\d{4})/g

并使用替换$1

如果长度不固定,则使用/@\\d+|(\\d+)/g

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM