QString使用正则操作的接口实现
介绍QString使用正则操作的接口。
Qt5.0引入QRegularExpression,相比于QRegExp,前者修复了很多bugs,功能上也是兼容于QRegExp。推荐使用QRegularExpression。
contains
正则表达式rx是否与字符串中的某个地方匹配,匹配返回true,否则返回false。
boolcontains(constQRegExp&rx)const boolcontains(QRegExp&rx)const boolcontains(constQRegularExpression&re)const boolcontains(constQRegularExpression&re,QRegularExpressionMatch*match)const
count
返回正则表达式rx在字符串中匹配的次数。
intcount(constQRegExp&rx)const intcount(constQRegularExpression&re)const
indexOf
返回字符串中正则表达式rx的第一个匹配项的索引位置,从索引位置向前搜索。如果rx在任何地方都不匹配,则返回-1。
intindexOf(QRegExp&rx,intfrom=0)const intindexOf(constQRegularExpression&re,intfrom=0)const intindexOf(constQRegularExpression&re,intfrom,QRegularExpressionMatch*rmatch)const
lastIndexOf
返回字符串中正则表达式rx最后一个匹配项的索引位置,从索引位置向后搜索。如果rx在任何地方都不匹配,则返回-1。
intlastIndexOf(QRegExp&rx,intfrom=-1)const intlastIndexOf(constQRegularExpression&re,intfrom=-1)const intlastIndexOf(constQRegularExpression&re,intfrom,QRegularExpressionMatch*rmatch)const
remove
移除字符串中符合正则表达式rx的匹配,并返回对该字符串的引用。
QString&remove(constQRegExp&rx) QString&remove(constQRegularExpression&re)
replace
将字符串中符合正则表达式rx就替换为after字符串,并返回对该字符串的引用。
QString&replace(constQRegExp&rx,constQString&after) QString&replace(constQRegularExpression&re,constQString&after)
section
将字符串由正则表达式来分割字段序列。
QStringsection(constQRegExp®,intstart,intend=-1,QString::SectionFlagsflags=SectionDefault)const QStringsection(constQRegularExpression&re,intstart,intend=-1,QString::SectionFlagsflags=SectionDefault)const
split
将字符串拆分为正则表达式rx匹配的子字符串,并返回这些字符串的列表。
QStringListsplit(constQRegExp&rx,QString::SplitBehaviorbehavior=KeepEmptyParts)const QStringListsplit(constQRegularExpression&re,QString::SplitBehaviorbehavior=KeepEmptyParts)const
splitRef
将字符串拆分为正则表达式rx匹配的子字符串引用,并返回这些字符串的列表。
QVectorsplitRef(constQRegExp&rx,QString::SplitBehaviorbehavior=KeepEmptyParts)const QVector splitRef(constQRegularExpression&re,QString::SplitBehaviorbehavior=KeepEmptyParts)const
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。