gpt4 book ai didi

regex - 如何使用正则表达式在 Qt 中用 HTML 链接替换 ​​URL?

转载 作者:行者123 更新时间:2023-12-01 10:09:40 24 4
gpt4 key购买 nike

我如何使用 QString::replace检测字符串中的 URL 并用 HTML 链接替换它们,就像这样......

[...].replace(QRegExp("???"), "<a href=\"\\1\">\\1</a>")
QRegExp的论据应该是什么?是? URL 的结尾应由出现的空白字符(例如空格、\r 或\n)或字符串的结尾来表示。

正则表达式应该相当简单:http://、https://、ftp://等,后跟一个或多个非空白字符,应转换为链接。

编辑:这是我使用的解决方案...
[...].replace(QRegExp("((?:https?|ftp)://\\S+)"), "<a href=\"\\1\">\\1</a>")

最佳答案

我想 (?:https?|ftp)://\\S+会为你做的。

不要忘记这可能会匹配一些无效的 URL,但这对您的目的来说可能没问题。 (仅匹配语法上有效的 URL 的正则表达式构建起来非常复杂,不值得付出努力。)

关于regex - 如何使用正则表达式在 Qt 中用 HTML 链接替换 ​​URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3321256/

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