我试图找到笑脸文字的所有外观":D"在" mailto"之后没有关注 问题是我试图检测htmlText中的表情符号,有时可能不正确 例子" mailto:Denis@email.com"微笑模式":D"出现在电子邮件中时不应该匹配。 这是我尝试实施的错误示例:http://regexr.com/3a3at 有人请帮忙。
答案 0 :(得分:1)
Javascript(真可惜!)不支持lookbehinds,因此最现实的选择就像是
input
.replace(/(mailto|https?):/g, "$1\x00")
.replace(/:D/g, "smile")
.replace(/\x00/g, ":")
基本上,将“不需要的”冒号替换为\x00
(或输入中不太可能出现的其他符号),处理微笑,然后将\x00
替换回冒号。