【发布时间】:2018-06-07 01:13:58
【问题描述】:
我需要您的帮助来使用正则表达式提取正确的电子邮件。 这是一个原始的 HTML:
</a>
<script>
var XutJPVbvZ = 'sales@some##thing.com';
var XutJPVbvZ = XutJPVbvZ.split('#');
document.getElementById('XutJPVbvZ').innerHTML =
XutJPVbvZ[0]+XutJPVbvZ[2]+XutJPVbvZ[1];
document.getElementById('XutJPVbvZ').href =
'mailto:'+XutJPVbvZ[0]+XutJPVbvZ[2]+XutJPVbvZ[1];
</script>
</div>
我用这个表达式匹配一封电子邮件:
[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_.]+[a-zA-Z]+[a-zA-Z0-9-_.]+
我得到的是:sales@some##thing.com
如何使正则表达式返回一封电子邮件,该电子邮件地址中间没有两个 # 特殊字符?
谢谢
【问题讨论】:
-
您是要仍然匹配电子邮件但去掉“#”字符,还是只匹配有效的电子邮件?
-
是的,我想匹配电子邮件,但要去掉“#”字符
-
听起来你必须在与正则表达式匹配后对字符串进行搜索和替换......除非你想玩匹配组(即使那样你仍然需要后处理将这些组重新组合在一起)
-
@swalladge 我不能这样做,因为这是抓取的 html...我正在将其导出为 csv,所以也许我可以在此之后执行此操作,但如果我能做到,那就太好了报废时的表达......
-
如果您详细说明您在问题中使用的工具可能会有所帮助。 :)