正则菜鸟求教

2022-07-20 12:07:33 +08:00
 tagtag
一段文本:
<span>target</span> target <div>target</div>

我想只替换没有被标签包裹的 target ,如果被标签包裹则忽略,应该怎么匹配啊,感谢感谢。
884 次点击
所在节点    正则表达式
5 条回复
xiangyuecn
2022-07-20 12:20:16 +08:00
'<span>target</span> target <div>target</div>'.replace(/(<\/\w+>)([^<]+)(<(?!\/))/, "$1 服不服 $3");
tagtag
2022-07-20 12:24:53 +08:00
@xiangyuecn 感谢,但是这个好像不能通用,用分组应该不行。
duan602728596
2022-07-20 16:03:39 +08:00
这种 html 的处理不推荐使用正则,建议转换成树处理。浏览器内原生使用 DOMparser ,node 端推荐用 jsdom 。
autoxbc
2022-07-20 17:07:47 +08:00
所有正则教程都应该告诉用户「什么情况下不要用正则」
lululau
2022-07-20 17:21:34 +08:00
楼上说得对,其实这题他不会

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/867504

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX