【发布时间】:2022-02-05 22:51:43
【问题描述】:
我正在制作一个 c# 代码,当用户单击一个按钮时,它使用用户输入的路径,在 Richtextbox 中输入的 HTML 代码的 href 和 src 属性中转换相对于绝对 URL。我需要一个只匹配 href 和 src 属性中的相对 URL 并将它们转换为绝对 URL 的正则表达式。这就是我想要实现的目标: 例子: 如果用户输入的路径:https://example.com/page Richtextbox中的html代码是:
<a href="https://example.com">click</a>
<a href="page1.html">click</a>
<img src="/img1.png" />
<img src="../img2.png" />
这是我想要的 html 代码的结果:
<a href="https://example.com">click</a> //this doesn't change
<a href="https://example.com/page/page1.html">click</a>
<img src="https://example.com/page/img1.png" />
<img src="https://example.com/img2.png" />
我只能想出匹配 href 属性的正则表达式。href=(["])(.?)\1 但我想不出一个可以完成上述工作的正则表达式(相对于绝对值)。
【问题讨论】:
标签: c# html regex url relative-path