很高兴,Qt中有QString类,这让在C/C++中使用字符串变得十分的方便(以前在BCB中用过AnsiString,也十分好用)。
在经过搜索得知了QString的方法后,更加的高兴了,这货简直是集PHP和JS的字符串于一身啊js切割字符串,各种操作各种姿势随便用啊。爽。
要知道以前在C语言中js切割字符串,根本没有字符串类型,只有char*这个指针或者char[]数组。而要复制、对比、截取、查询字符串,都要用相应的函数,体验糟透了。
然后就是访问剪贴板了,查了一下,过分的简单:
设置剪贴板的内容
QClipboard *clipboard = QApplication::clipboard();
clipboard->setText("contents");
获取剪贴板的内容
QClipboard *clipboard = QApplication::clipboard();
lineEdit->setText(clipboard->text());
很好很强大。
然后则是使用正则表达式从字符串中提取URL了,不多说,直接放代码:
/**
* 从字符串里提取出第一个出现的网址来
* @brief matchHttpUrl
* @param str
* @return urlstring
*/
QString matchHttpUrl(QString str)
{
QString ret = ""; //返回值,初始化为空。
//正则表达式
QRegularExpression re("http[s]{0,1}://[\w.]*\w+[/\w+]*");
//正则表达式匹配结果
QRegularExpressionMatch match=re.match(str);
if(match.hasMatch()) //如果有匹配结果
{
//用循环把匹配结果拼接起来,匹配结果里是一段一段的,并不是完整的结果字符串
foreach(auto m, match.capturedTexts())
{
ret.append(m); //将子结果连接到字符串末尾
}
}
return ret; //返回值
}
将上面代码放入工程里,调试一下:
运行正常
一次运行成功。。。
限时特惠:本站每日持续更新海量设计资源,一年会员只需29.9元,全站资源免费下载
站长微信:ziyuanshu688
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。