Regex 需要使用正则表达式查找电话号码和字符串的帮助吗
我不熟悉regex,我尝试使用regex查找问号后面和管道前面的任何字符数,以及电话号码。有人能帮我吗?下面是一个示例URLRegex 需要使用正则表达式查找电话号码和字符串的帮助吗,regex,Regex,我不熟悉regex,我尝试使用regex查找问号后面和管道前面的任何字符数,以及电话号码。有人能帮我吗?下面是一个示例URL 正则表达式应该找到“demo”和“1555555”如果您自己创建该链接,我建议您编写一个公共$GET变量。你不需要任何正则表达式 您可以使用此正则表达式: \?(\w+)\|(\d+) MATCH 1 1. [21-25] `demo` 2. [26-37] `15555555555` 这是一个带有命名捕获组的正则表达式,我还尝试了多种不同数字格式的可能性
正则表达式应该找到“demo”和“1555555”如果您自己创建该链接,我建议您编写一个公共$GET变量。你不需要任何正则表达式
您可以使用此正则表达式:
\?(\w+)\|(\d+)
MATCH 1
1. [21-25] `demo`
2. [26-37] `15555555555`
这是一个带有命名捕获组的正则表达式,我还尝试了多种不同数字格式的可能性 Regex
(?<=\?)(?'name'[\w\s%]+)\|(?'phone'[\+\w-\(\)\s%]+)(?:\n|$)
结果
- 比赛1
- 名称[21-25]
demo
- 电话[26-37]
1555555
- 名称[21-25]
- 比赛2
- 名称[59-64]
Local
- 电话[65-73]
754-3010
- 名称[59-64]
- 比赛3
- 名称[95-103]
国内
- 电话[104-118]
(541)754-3010
- 名称[95-103]
- 第四场
- 名称[140-153]
International
- 电话[154-169]
+1-541-754-3010
- 名称[140-153]
- 第五场
- 姓名[191-207]
在美国拨打
- 电话[208-222]
1-541-754-3010
- 姓名[191-207]
- 第六场
- 姓名[244-263]
从德国拨打
- 电话[264-280]
001-541-754-3010
- 姓名[244-263]
- 第七场
- 姓名[302-320]
从法国拨打
- 电话[321-337]
191 541 754 3010
- 姓名[302-320]
- 第八场
- 姓名[359-364]
skype
- 电话[365-377]
155555-SKYPE
- 姓名[359-364]
- 第九场
- 名称[444-463]
一个%20转义的%20名称
- 电话[464-486]
191%20541%20754%203010
- 名称[444-463]
试试看,哈哈哈。这就是问题所在。我使用的是第三方web服务,它只接受一个GET参数。我正在寻找一个解决办法,因为@hjpotter92说:\?(\w+)\(\d+)你可以测试正则表达式,例如。这里非常感谢hjpotter92!!!!!!!非常感谢您抽出时间并给出详细的解释!
(?<=\?)(?'name'[\w\s%]+)\|(?'phone'[\+\w-\(\)\s%]+)(?:\n|$)
http://www.myurl.com?demo|15555555555
http://www.myurl.com?Local|754-3010
http://www.myurl.com?Domestic|(541) 754-3010
http://www.myurl.com?International|+1-541-754-3010
http://www.myurl.com?Dialed in the US|1-541-754-3010
http://www.myurl.com?Dialed from Germany|001-541-754-3010
http://www.myurl.com?Dialed from France|191 541 754 3010
http://www.myurl.com?skype|155555-SKYPE
http://www.myurl.com?an%20escaped%20name|191%20541%20754%203010