6

我有这个正则表达式可以正确匹配我需要的所有内容(所有电子邮件地址不在链接内):

/((?<!mailto:|=|[a-zA-Z0-9._%+-])[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.‌​-]+\.[a-zA-Z]{2,64}(?![a-zA-Z]|<\/[aA]>))/

不幸的是,由于 javascript 不支持lookbehind,它不适用于我的网络应用程序。有解决方案吗?

4

1 回答 1

3

根据定义,您必须向后看才能知道<a>电子邮件地址之前没有起始链接标签。

你可以试试:

  1. 匹配每个电子邮件地址,然后以编程方式验证该电子邮件地址是否不在链接中

或者

  1. 使用 AJAX 将数据发送到您的服务器,并让您的服务器执行正则表达式。
于 2012-09-07T11:25:17.523 回答