在nodejs中不要replace自封闭的br或img标签
问题与closures所有HTML未closures的IMG标签相同 ,但提供的正则expression式(<img[^>]+)(?<!/)>
需要向后看支持 – 哪个nodejs没有。
我怎样才能在nodejs中获得相同的结果?
源HTML由另一个应用程序生成。
改变正则expression式:
/(<img[^>]*[^\/>])>/
或者另一种方式(最可能慢一点):
/(<img(?:(?!\/>)[^>])+)>/
我试图不改变至less1个字符的假设为>
,即<img>
不会被你的正则expression式/(<img[^>]+)(?<!\/)>/
匹配,也不是正则expression式我上面build议。
如果你想<img>
与正则expression式匹配(这样你可以修改它):
/(<img(?:[^>]*[^\/>])?)>/
您可以将该正则expression式重构为一个匹配相同但不使用逆序的expression式:
/(<img(?:[^>\/]|\/(?!>))+)>/
但是,请注意, 除了XHTML自包含标签,其答案应包含 :-),这是RegEx匹配开放标签的近似重复