从正则表达式捕获组中修剪空格和换行符

问题描述 投票:0回答:1
regex regex-group
1个回答
0
投票

“...我想用表达式捕获电话号码和电子邮件地址的值。...

...有人知道我如何成功地获取没有换行符和空格的电话号码吗?这可能吗? ...”

使用捕获模式

作为前言,您没有指定您正在使用哪个正则表达式引擎,因此您可能需要相应地调整语法。

这将捕获电话号码。
这些数字包含在组 1 到 5 中。

(?s)id=\"PHONE\">Phone Number:.+?(?:(\+\d+)[^\d]+(\d+)[^\d]+(\d+)[^\d]+(\d+)[^\d]+(\d+))<\/span>

并且,这将捕获电子邮件地址。
请注意,电子邮件地址后面的结束 span 标签不是以

<
字符开头。
我想这可能是你的一个拼写错误。
如果没有,请发表评论,我可以重新考虑模式

(?s)id=\"EMAIL\">Email Address:.+?<\/span>.+?>(.+?)<\/span>

从这里,您可以合并两个模式,以创建单个模式

(?s)id=\"PHONE\">Phone Number:.+?(?:(\+\d+)[^\d]+(\d+)[^\d]+(\d+)[^\d]+(\d+)[^\d]+(\d+))<\/span>.+?id=\"EMAIL\">Email Address:.+?<\/span>.+?>(.+?)<\/span>

输出

+32 123 45 67 89
[email protected]
© www.soinside.com 2019 - 2024. All rights reserved.