【发布时间】:2018-06-04 09:32:26
【问题描述】:
我有这个正则表达式
var reg = new RegExp('["\\>]{1}\\$([^"\\<\\> ]*)["\\<]{1}', 'g');
我在这个字符串上运行
'<span>$name</span><img src="$images[0].src"><img src="$images[1].src"><img src="$images[2].src">'
如果我在 RegExr 这样的网站上测试它,它可以正常工作,但如果我在 FireFox 中测试它
var reg = new RegExp('["\\>]{1}\\$([^"\\<\\> ]*)["\\<]{1}', 'g');
var match = reg.exec('<span>$name</span><img src="$images[0].src"><img src="$images[1].src"><img src="$images[2].src">');
console.log(match);
它只匹配">$name<"。如何让它在网站上一网打尽?
这不是重复的。我没有使用查询字符串,除了它可以在网站上在线使用。
【问题讨论】:
-
避免对 HTML 文本使用正则表达式。
-
不要对 HTML 文本使用正则表达式。
-
仅供参考,您无需转义
>和<。 -
而且你几乎不需要
{1}。 -
@Barmar 没有区别,只是一个偏好......
标签: javascript regex