QRegExp Pattern For URLs

QRegExp Pattern For URLs

本文关键字:URLs For Pattern QRegExp      更新时间:2023-10-16

我正在尝试使用下面的模式从存储在变量中的一些文本中匹配谷歌URL。

URL使用双引号

QRegExp regExp;
regExp.setPattern("http://www.google.com/(.*)");

我设法匹配了url,但它不同寻常地匹配了它后面包含的所有文本。我尝试过使用类似的变体,如下面的变体,但它们似乎不起作用。

regExp.setPattern("http://www.google.com/(.*)"is"); 
regExp.setPattern("http://www.google.com/^(.*)$"");

获取仅与url匹配的正则表达式的任何帮助。

提前感谢

您需要/想要使用QRegExp有什么原因吗?

你很可能会使用QUrl。

即使我们不可能知道文本中的url周围是什么(引号?括号?空格?),我们也可以通过尝试对不能成为url一部分的字符进行负匹配来创建更好的正则表达式:

QRegExp regExp;
regExp.setPattern("http://www.google.com/([^()"' ]*)");

然后,您只需要向这个负字符类添加更多可能的字符。