微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

QT中的QRegExp学习正则表达式

QT中的QRegExp学习(正则表达式) 下面是例子: [ABCD] 或 [A-D] 表示匹配A B C D中的其中一个 x{1,1} 匹配x一次,仅一次 x{1,5} 表示匹配x次数>=1 <=5 [0-9]{1,1} 匹配0-9中的数字一次,仅一次 [0-9]{1,2} 匹配[0 99]中的数字 但是这个也可以匹配一个string中间的数字,若想匹配一个string ^[0-9]{1,2}$ ^表示字符头 $表示字符尾 这2个字符只定义一个string,它不匹配字符中的字符 ?表示出现0或1次 [0-9] = \d x{1,1} = x [0 99]=^\d{1,2}$ =^\d\d{0,1}$ = ^\d\d?$ 匹配mail的写法:m{1,1}a{1,1}i{1,1}l{1,1} | 表示或 mail|letter|correspondence. 匹配 'mail' 或 'letter' 或 'correspondence' 但是这个表达式也可以匹配'email',更改方法如下: (mail|letter|correspondence) ()表示里面是一个小的正则表达式单元,可以在后面使用的 \b 表示一个单词的开始和结尾 如空格 换行 非字符 单词开始和结尾都是单词间的分隔符 如 \b(mail|letter|correspondence)\b (?!__) 预取符号 &(?!amp;)表示取 &后不跟amp的字符串 计算字符串中的Eric 和 Eirik 出现的次数, \b(Eric|Eirik)\b 或 \bEi?ri[ck]\b(此也可以匹配 'Eric','Erik','Eiric' and 'Eirik'.) 字符匹配表: c A character represents itself unless it has a special regexp meaning. e.g. c matches the character c. 字符匹配字符 仅表示自己 \c A character that follows a backslash matches the character itself,except as specified below. e.g.,To match a literal caret at the beginning of a string,write \^. \a Matches the ASCII bell (BEL,0x07). \f Matches the ASCII form Feed (FF,0x0C). \n Matches the ASCII line Feed (LF,0x0A,Unix newline). \r Matches the ASCII carriage return (CR,0x0D). \t Matches the ASCII horizontal tab (HT,0x09). \v Matches the ASCII vertical tab (VT,0x0B). \xhhhh Matches the Unicode character corresponding to the hexadecimal number hhhh (between 0x0000 and 0xFFFF). \0ooo (i.e.,\zero ooo) matches the ASCII/latin1 character for the octal number ooo (between 0 and 0377). . (dot) Matches any character (including newline). 匹配任意字符,包括新行 \d Matches a digit (QChar::isDigit()). 匹配数字 \D Matches a non-digit.匹配非数字 \s Matches a whitespace character (QChar::isspace()). 匹配空格 \S Matches a non-whitespace character.匹配非空格 \w Matches a word character (QChar::isLetterOrNumber(),QChar::isMark(),or '_'). 匹配字母 数字 记号 '_' \W Matches a non-word character. 匹配非word字符 \n The n-th backreference,e.g. \1,\2,etc. To include a \ in a regexp,enter it twice,i.e. \\. To match the backslash character itself,enter it four times,i.e. \\\\. [abc] 匹配 'a' or 'b' or 'c',[^abc] 匹配 'a' or 'b' or 'c'.之外的 - 表示范围. [W-Z] 匹配 'W' or 'X' or 'Y' or 'Z'. E表示正则表达式 E? 出现次数 0 or 1 E+ 或 E{1,} >=1 E* >=0 E{n} =n E{n,}>=n E{,m} <=m E{n,m} <=n <=m tag+ 表示 tag tagg tagggg taggggg 等 (tag)+ 表示 tag tagtag tagtagtag tagtagtagtag 等 正则表达式贪心匹配,若想不贪心 ,设置 setMinimal() \b(\w+)\W+\1\b \1表示 (\w+) 相同 这个表示有回望操作 (?:green|blue) 此表示无回望操作 回望操作 begin '(?:' and end ')' 表示只对是否匹配成功感兴趣,对匹配的内容,匹配到的位置等不感兴趣 * 将会最大限度的匹配 a*(a*) 将会匹配 aaa 中的aaa可以调用cap()得到匹配的值,指定QRegExp::RegExp2或setPatternSyntax(QRegExp::RegExp2)可以改变匹配贪婪度 断言:进行声明,不进行匹配,下面E代码正则表达式 ^ string开头 \\^表示^ $ string结尾 \\$表示$ \b word边界 \B 非word边界 (?=E) 正向前匹配 const(?=\s+char) 匹配 'static const char *' 中的 const 而 const\s+char 匹配 const char (?!E) 负向前匹配 const(?!\s+char) 匹配 const 后面没跟 空格+char的 通配符 setPatternSyntax() 可以在正则表达式和通配符之间转换,后者比前者更简单,并且后者只有4个特性: 任意字符表示自己 ? 匹配任意的单个字符 * 匹配 >=0 个字符 [...]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


正则替换html代码中img标签的src值在开发富文本信息在移动端展示的项目中,难免会遇到后台返回的标签文本信息中img标签src属性按照相对或者绝对路径返回的形式,类似:<img src="qinhancity/v1.0.0/ima
正则表达式
AWK是一种处理文本文件的语言,是一个强大的文件分析工具。它是专门为文本处理设计的编程语言,也是行处理软件,通常用于扫描,过滤,统计汇总等工作,数据可以来自标准输入也可以是管道或文件。当读到第一行时,匹配条件,然后执行指定动作,在接着读取第二行数据处理,不会默认输出。如果没有定义匹配条件,则是默认匹配所有数据行,awk隐含循环,条件匹配多少次,动作就会执行多少次。逐行读取文本,默认以空格或tab键为分割符进行分割,将分割所得的各个字段,保存到内建变量中,并按模式或或条件执行编辑命令。与sed工作原理相比:s
正则表达式是特殊的字符序列,利用事先定义好的特定字符以及他们的组合组成了一个规则,然后检查一个字符串是否与这种规则匹配来实现对字符的过滤或匹配。我们刚才在学习正则表达式的时候,我们表示数字,字母下划线的时候是用w表示的,为什么我们在书写的时候用的是w?我们可以发现我们分割空格的话,并没有达到我们预期的效果,这里我们可以使用正则表达式的方式进行分割。我们可以发现,我们和上面得到的结果不一致,既然出错了,肯定是我们的使用方式不对。看到这里我们就能感受到正则表达式的作用了,正则表达式是字符串处理的有力工具。
Python界一名小学生,热心分享编程学习。
收集整理每周优质开发者内容,包括、、等方面。每周五定期发布,同步更新到和。欢迎大家投稿,,推荐或者自荐开源项目/资源/工具/文章~
本文涉及Shell函数,Shell中的echo、printf、test命令等。
常用正则表达,包括: 密码、 手机号、 身份证、 邮箱、 中文、 车牌号、 微信号、 日期 YYYY-MM-DD hh:mm:ss、 日期 YYY-MM-DD、 十六进制颜色、 邮政编号、 用户名、 QQ号
一、python【re】的用法1、re.match函数·单一匹配-推荐指数【★★】2、re.search函数·单一匹配-推荐指数【★★★★★】3、re.findall函数·多项匹配-推荐指数【★★★★★】4、re.finditer函数·多项匹配-推荐指数【★★★★】5、re.sub函数·替换函数-推荐指数【★★★★】二、正则表达式示例·总有一款适合你1、正则表达式匹配HTML指定id/class的标签2、正则表达式匹配HTML中所有a标签中的各类属性值3、获取标签的文本值
1.借助词法分析工具Flex或Lex完成(参考网络资源)2.输入:高级语言源代码(如helloworld.c)3.输出:以二元组表示的单词符号序列。通过设计、编制、调试一个具体的词法分析程序,加深对词法分析原理的理解,并掌握在对程序设计语言源程序进行扫描过程中将其分解为各类单词的词法分析方法。由于各种不同的高级程序语言中单词总体结构大致相同,基本上都可用一组正则表达式描述,所以构造这样的自动生成系统:只要给出某高级语言各类单词词法结构的一组正则表达式以及识别各类单词时词法分析程序应采取的语义动作,该系统