gpt4 book ai didi

Javascript 正则表达式查找和替换问题

转载 作者:行者123 更新时间:2023-11-28 19:15:12 27 4
gpt4 key购买 nike

以下 HTML 没有结束符 </dt>每个匹配开口的标签 <dt>现在缺少标签。

例如<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=68924" ADD_DATE="1389093133">MSN Entertainment</A> (此处缺少关闭 </dt>)。

因此,我决定使用正则表达式添加结束标记。我能够编写寻找非封闭 <dt> 的模式标签如

用于查找未闭合的正则表达式模式 <dt>标签:

<DT><A HREF=".*</A>

正则表达式代码替换我发现的使用以前的模式并关闭 </dt> 的内容标签

<DT><A HREF=".*</A></DT>

但是我得到的结果是这个字符串 <DT><A HREF=".*</A></DT> ,而不是仅仅添加结束语 <dt>标签 我在任何找到该模式的地方都得到了这个字符串。

想要添加</dt>我发现的模式末尾的标记,无论是在 IDE 中还是通过 javascript 对我来说都可以。

HTML 文件:

<DL>
<DT><H3 ADD_DATE="1389093133" LAST_MODIFIED="1423897474">Links for United States</H3>
<DL>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=129792" ADD_DATE="1389093133">GobiernoUSA.gov</A>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=129791" ADD_DATE="1389093133">USA.gov</A>
</DL>
<DT><H3 ADD_DATE="1389093133" LAST_MODIFIED="1423897474">MSN Websites</H3>
<DL><p>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=55143" ADD_DATE="1389093133">MSN Autos</A>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=68924" ADD_DATE="1389093133">MSN Entertainment</A>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=68923" ADD_DATE="1389093133">MSN Money</A>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=68921" ADD_DATE="1389093133">MSN Sports</A>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=54729" ADD_DATE="1389093133">MSN</A>
<DT><A HREF="http://go.microsoft.com/fwlink/?LinkId=68922" ADD_DATE="1389093133">MSNBC News</A>
</DL>

</DL>

最佳答案

正则表达式替换字符串的功能之一是 Backreferences ,其中引用源字符串中的字符串部分。

对于反向引用,您需要使用括号指定搜索字符串的一部分,然后您可以使用 \n 模式进行反向引用,其中 n 指的是 n-th 组.

在下面的示例中,我们将所有搜索字符串放在括号中,使其成为一个可以反向引用的组。

(<DT>.*</A>$)

替换字符串:

\1</DT>

关于Javascript 正则表达式查找和替换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29999771/

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