Regexp lookbehind javascript

ian*_*naz 6 javascript regex

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

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

不幸的是,由于javascript不支持lookbehind,它在我的网络应用程序上不起作用.有解决方案吗?

ron*_*chn 3

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

你可以试试:

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

或者

  1. 使用AJAX将数据发送到您的服务器,并让您的服务器执行正则表达式。