猿问

帮忙写个正则,用于匹配电话号码

匹配一段电话号码,单纯的字符串匹配我已经写好了,但是要过滤一些特殊的情况这是我写的匹配电话号码的正则,用于匹配电话号,并且添加a标签用于直接点击打电话。并不是用于获取电话号码。
letphoneRex=/(1[3-8]\d{9})(?!@)/gi
returnxxx.replace(phoneRex,' $1 ')
但比如匹配下面这个就有问题
qwerqwer1441212121214412121212qwerqw14412121212erqewr
由于这个正则会匹配到span的name和内部,而实际的需求是要匹配所有不被span标签包裹的14412121212,并且前面那个span标签不一定会有,所以正则是应该过滤掉那两种情况的,但是不知道怎么写
想半天没想出来,求助~~
update:
/(1[3-8]\d{9})(?!@|((("|')?>)?\S*<\/\w*>))/gi
根据大家提供的思路,最终有了这个正则用于匹配所有不在标签内的电话号码,第一个排除@符号是因为有的邮箱是电话号码开头的,比如说14412121212@163.com
感谢大家~
富国沪深
浏览 491回答 2
2回答
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答