3

我有动态生成的包含 HTML 链接的字符串。例如,字符串可能包含:

You can visit <a class="hyperlink" href="https://www.stackoverflow.com">Stack Overflow</a> or <a class="hyperlink" href="https://www.reddit.com">Reddit.com</a> for help, or you can visit <a href="hyperlink" href="https://www.google.com">https://www.google.com</a>

我正在尝试查找所有 href 并为它们生成新的 URL,然后将它们插入回字符串中。所以上面的例子,如果成功运行,看起来像:

You can visit <a class="hyperlink" href="https://mydomain.com/www.stackoverflow.com">Stack Overflow</a> or <a class="hyperlink" href="https://mydomain.com/reddit.com">Reddit.com</a> for help, or you can visit <a href="hyperlink" href="https://mydomain.com/www.google.com">https://www.google.com</a>

我对 Python 还是很陌生,并且还没有成功地弄清楚如何找到一个 href 并将其值添加到我的“自定义”域中。任何见解将不胜感激!

4

1 回答 1

1

这是使用正则表达式的理想场所。

import re

text = 'You can visit <a class="hyperlink" href="https://www.stackoverflow.com">Stack Overflow</a>'
new_text = re.sub(r'href="http(s)?:\/\/(.+?)"', r'href="https://mydomain.com/\2"', text)
于 2013-04-06T23:12:18.677 回答