我使用^.*?(\d{3}\D?\d{3}\D?\d{4}).*$
并替换为\1
或$1
,以便删除除电话号码外的每一行中的所有内容。示例链接https://regex101.com/r/jK6eD8/3。
基本上它的工作原理如下:
第1行:这是废话文本,只有818-333-2323是保持在行
第2行:仅保留以下号码4445553333。
我需要帮助的是找到下面电话格式的匹配正则表达式模式,并删除相应行中的所有其他内容,除了匹配的电话号码,就像上面的链接一样。格式如下。
07123452670
07812 345 931
07412 123466
00447912345188
+971557017442
+971 557 856 832
0414 934 993
字符串
基本上,我需要一个正则表达式来匹配11位数字。(07123456270)
匹配5位数字,后跟空格,后跟3位数字,后跟空格,后跟3位数字。(07812 345 931)
匹配5位数字,后面是空格,后面是6位数字(07412123466)
匹配14位数(12345678901234)
匹配一个+号,后跟12位数字(+971557017442)
匹配+后跟3位数字,空格,后跟3位数字,空格,再加3位数字(+971 557 856 832)
最后一个,4位,空格,3位,空格,3位。(0414 934 993)
2条答案
按热度按时间g6baxovj1#
此正则表达式满足以下要求:第一个月
如图所示:https://regex101.com/r/lY3jW0/1
希望能帮上忙
idfiyjo82#
如果你正在分析的文本不包含其他“长”数字,你可以得到数字串,它们之间有可选的空格、句号和破折号。它可以看起来像这样:
字符串
匹配组必须由
1.一个数字,后跟
1.最后一个数字。
不过,这对数字的组成并不严格,因此可能不适合您的需要。但话又说回来,它可能会;)
谨致问候