关于QRegExp如何筛选出特殊字符的解决方法
2018-02-09 16:30
169 查看
已经是腊月二十四了,不出什么意外的话这是农历2017年的最后一篇博客。今年一点过年的氛围都没有,年味真的淡了呢。
这几天写程序遇到一个小问题,在tableView中筛选字符的时候出现错误,鬼知道我是怎么发现这个问题的。功能就是类似于在同花顺的股票列表中筛选出带“中”字样的股票,然鹅,我发现筛选“*ST”的时候就不好使了。筛选使用的方法是QRegExp的setFilterRegExp方法,代码很简单:QRegExp regExp(text, Qt::CaseInsensitive, QRegExp::RegExp);//text就是要筛选的字符串
QSortFilterProxyModel->setFilterRegExp(resExp);
所以想到问题可能是出在正则表达式中也包含“*”字符导致的筛选失败。找了半天找到一个合适的解决方法,就是在特殊字符前加上//或@就可以了,试了一下“@”可以,“//”不行text = text.replace("*", "@*");
QRegExp regExp(text, Qt::CaseInsensitive, QRegExp::RegExp);//text就是要筛选的字符串
QSortFilterProxyModel->setFilterRegExp(resExp); 希望能帮助到你,祝大家狗年旺旺喽!
这几天写程序遇到一个小问题,在tableView中筛选字符的时候出现错误,鬼知道我是怎么发现这个问题的。功能就是类似于在同花顺的股票列表中筛选出带“中”字样的股票,然鹅,我发现筛选“*ST”的时候就不好使了。筛选使用的方法是QRegExp的setFilterRegExp方法,代码很简单:QRegExp regExp(text, Qt::CaseInsensitive, QRegExp::RegExp);//text就是要筛选的字符串
QSortFilterProxyModel->setFilterRegExp(resExp);
所以想到问题可能是出在正则表达式中也包含“*”字符导致的筛选失败。找了半天找到一个合适的解决方法,就是在特殊字符前加上//或@就可以了,试了一下“@”可以,“//”不行text = text.replace("*", "@*");
QRegExp regExp(text, Qt::CaseInsensitive, QRegExp::RegExp);//text就是要筛选的字符串
QSortFilterProxyModel->setFilterRegExp(resExp); 希望能帮助到你,祝大家狗年旺旺喽!
相关文章推荐
- 关于使用dom4j生成xml时特殊字符处理的解决方法
- 如何解决在.Net中用Sql语句向SqlServer数据库中插入特殊字符失败的问题?
- 关于如何打印ListView的解决方法
- Linux系统下串口接收数据,部分特殊字符丢失的解决方法
- url 传递参数(特殊字符)解决方法
- 页面因脚本代码中含有特殊字符未能通过W3C校验的解决方法
- 关于"如何让应用程序只有一个实例在运行"的孟宪会的解决方法的疑问
- url 特殊字符 传递参数解决方法
- url 传递参数(特殊字符)解决方法
- 关于如何解决NSIS ERROR错误的方法
- 关于如何解决农行网银在WIN7下使用不正常的方法
- 关于BS程序开发中如何防止页面被多次提交解决方法!
- url 特殊字符 传递参数解决方法
- XML 文件中出现 & ® ™ 这类特殊字符的一种解决方法(from blog.joycode.com/ghj)
- 关于java中如何获得特殊字符(转载)
- (原创)关于如何处理EXCEL( CSV)文件 导入数据库的解决方法!!
- url 特殊字符 传递参数解决方法
- C#中关于从剪贴板中读取HTML格式含中文字符会出现的问题和解决方法
- url 传递参数(特殊字符)解决方法
- XML中特殊字符出现乱码的解决方法