gpt4 book ai didi

javascript - 解析字符串中的主题标签( anchor 标记除外)

转载 作者:行者123 更新时间:2023-11-28 08:10:07 24 4
gpt4 key购买 nike

我想将给定字符串中的主题标签 ( # ) 的任何实例转换为 HTML 标签:

例如:

  • #test应转换为 <a>#test</a>
  • test#test不应转换
  • <a href="#test">#test</a>不应转换
  • <p>#test</p>应该变成<p><a>#test</a></p>
  • <b>#test</b>应该变成<b><a>#test</a></b>

最佳答案

像下面这样的东西可能是一个开始(在 vim 中测试):

:% subst :<[^>|a>]\+>\zs\(#[^<]\+\)\ze:<a>\1</a>:

它将满足您的最后三个要求。

至于前两个,我想它们太宽泛了,特别是因为 test#test 。我正在工作,现在不能花太多时间在这上面。

顺便说一句,正如人们所说,正则表达式不应该用于解析 html/xml 内容。不过,如果是学习学习的话,也许还是可以的。

编辑:这个其他正则表达式符合前两个要求:

%s:\(\w\|<[^>]\+>\|"\)\@<!\(#[^ ]\+\):<a>\2<\/a>:

它将添加 <a> #hashtag 周围直到第一个空格。这必须根据您的情况需要的可能性进行调整。当 #hashtags 没有出现在 html 标签、单词字符(teste#teste 不匹配)或双引号(对于属性)之后时,它会匹配 #hashtags。您可能还需要添加单引号或其他可能性。

这是一个很好的练习(在午餐时间......),但请遵循人们在评论中给你的建议。

关于javascript - 解析字符串中的主题标签( anchor 标记除外),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24328770/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com