正则表达式的示例分析
发表于:2024-10-19 作者:千家信息网编辑
千家信息网最后更新 2024年10月19日,这篇文章主要为大家展示了"正则表达式的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"正则表达式的示例分析"这篇文章吧。--------------
千家信息网最后更新 2024年10月19日正则表达式的示例分析
这篇文章主要为大家展示了"正则表达式的示例分析",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"正则表达式的示例分析"这篇文章吧。
-------------------------------------------------------------------------^ 和 $ 分别用来匹配字符串的开始和结束 -------------------------------------------------------------------------例1 ^ 开头 一定要有""字符串; 例2 $ 结尾 一定要有"" 的字符串; 例3 ^abc$ 以abc开头和以abc结尾的字符串,实际上是只有abc匹配 例4 abc 没符号就 匹配包含abc的字符串-------------------------------------------------------------------------* + 和 ? 用来表示一个字符可以出现的次数或者顺序. 他们分别表示-------------------------------------------------------------------------{0,} = * 例1 ab{0,} 匹配以a开头后面B出现O-N次( "a", "ab", "abb", "abbbbbbbbbbbbbbbbb", 无限...) {1,} = + 例2 ab{1,} 匹配以a开头后面B出现1-N次( "ab", "abb", "abbbbbbbbbbbbbbbbb", 无限...){0,1}= ? 例3 ab{0,1} 匹配以a开头后面B出现O-1次( "a", "ab") 例4 a{0,1}b+$ 匹配以0个或者1个a 再加上一个b结尾的字符串. ( "b", "ab")注(2种写法)ab{0,}也可以写成 ab*ab{1,}也可以写成 ab+ab{0,1}也可以写成 ab?a{0,1}b+$也可以写成 a?b+$(1)1要点, '*' '+',和 '?'只管控制它前面那个字符出现次数. 2 {N,N} 几到几次 {0} O次 3{}这个内不能为负数(2)次数是可以修改的例5 ab{2} 要求a后面一定要跟两个b(一个也不能少)如 ("abb"); 例6 ab{2,} 要求a后面一定要有两个或者两个以上b 如("abb", "abbbb", 等.); 例7 ab{3,5} 要求a后面可以有2-5个b("abbb", "abbbb", or "abbbbb"). (3)后面跟多个字符用()例8 a(bc)* 匹配 a 后面跟0个或者一个"bc"; 当然你也可以写成"a(bc){0,}"例9 a(bc){1,5} 匹配1个到5个 "bc." -------------------------------------------------------------------------│ 相当于OR 用来表示 1个或者 多个或者-------------------------------------------------------------------------例1 A│B 匹配含有"A" 或者 "B" 的 字符串; 例2 (A│B)C 匹配含有 "AC" 或者 "BC"的字符串; 例3 (A│B)*C 匹配含有(包括0-1个)a或b,后面跟一个c -------------------------------------------------------------------------. 可以代表所有的单一字符------------------------------------------------------------------------- . 不包括"\n"空格 如果有空格就用 但空格加一字符[\n.] 多个空格+1字符 [\n\n\n\n\n\n.]例1 a.[0-9] 一个a 加一个字符 再加一个0到9的数字 例2 ^.{3}$ 三个任意字符结尾 -------------------------------------------------------------------------'[ab]' 中括号括住的内容只匹配一个单一的字符 ------------------------------------------------------------------------- 例1 [ab] 匹配单个的 a 或者 b ( 和 "a│b" 一样); 例2 [a-d] 匹配'a' 到'd'的单个字符 (和"a│b│c│d" 还有 "[abcd]"效果一样); 一般我们都用[a-zA-Z]来指定字符为一个大小写英文例3 ^[a-zA-Z] 匹配以大小写字母开头的字符串 例4 [0-9]% 匹配含有 形如 x% 的字符串 例5 ,[a-zA-Z0-9]$ 匹配以逗号再加一个数字或字母结尾的字符串例6 %[^a-zA-Z]% 匹配含有两个百分号里面有一个(非)字母的字符串. 你也可以把你不想要得字符列在中括号里,你只需要在总括号里面使用'^' 要点1:^[内容] ^在[]外开头,就表示以内容开头要点2:[^内容] ^在[]里开头,就表示排除里面的内容(^非的意思)要点3: 匹配含有这些字符的字符串. 在中括号里[*\+?{}.] 或者' 符号将失效 括号只匹配单一字符要点4: []中含有']' 最好把它作为列表里的第一个字符(可能跟在'^'后面)要点5: []中含有有'-' 最好把它放在最前面或者最后面, or 或者一个范围的第二个结束点[a-d-0-9]中间的'-'将有效. -------------------------------------------------------------------------\b 和 \B 1匹配一个单词右边界 2匹配非单词边界-------------------------------------------------------------------------例1 've\b': 可以匹配love里的ve而不匹配very里有ve例2 'ov\B': 可以匹配love里的ov而不匹配ovry里有ov-------------------------------------------------------------------------\d 和 \D -------------------------------------------------------------------------例1 \d 匹配一个数字字符。等价于 [0-9]。 例2 \D 匹配一个非数字字符。等价于 [^0-9]。 -------------------------------------------------------------------------\w 和 \W -------------------------------------------------------------------------例1 \w 匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]' 例2 \W 匹配包括下划线的任何非单词字符。等价于 '[^A-Za-z0-9_]'。 ------------------------------------------------------------------------- 匹配非打印字符 -------------------------------------------------------------------------字符 含义 \cx 匹配由x指明的控制字符。例如, \cM 匹配一个 Control-M 或回车符。x 的值必须为 A-Z 或 a-z 之一。否则,将 c 视为一个原义的 'c' 字符。 \f 匹配一个换页符。等价于 \x0c 和 \cL。 \n 匹配一个换行符。等价于 \x0a 和 \cJ。 \r 匹配一个回车符。等价于 \x0d 和 \cM。 \s 匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。 \S 匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。 \t 匹配一个制表符。等价于 \x09 和 \cI。 \v 匹配一个垂直制表符。等价于 \x0b 和 \cK。 -------------------------------------------------------------------------例子 -------------------------------------------------------------------------匹配首尾空白字符的正则表达式:^s*|s*$匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*匹配网址URL的正则表达式:[a-zA-z]+://[^s]*匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 匹配形式如 0511-4405222 或 021-87888822 920-209 642-964匹配腾讯qq号:[1-9][0-9]{4,} 1+后面四为的数字开始,也就是 10000匹配中国邮政编码:[1-9]d{5}(?!d) 中国邮政编码为6位数字匹配身份证:d{15}|d{18}评注:中国的身份证为15位或18位匹配ip地址:d+.d+.d+.d+ 评注:提取ip地址时有用-------------------------------------------^ $ //开始到结尾 + //连续1-N个 (连在一起的)(也就是-{1,} )-? //表示负和非负 (也就是-{0,1} )[0-9]* //表示前面的位数0-N(也就是[0-9]{0,} ).? //表示有点或者无点[^ //非里面的内容[a-z] //匹配所有的小写字母 [A-Z] //匹配所有的大写字母 [a-zA-Z] //匹配所有的字母 [0-9] //匹配所有的数字 0-9的整数[0-9.-] //匹配所有的数字,句号和减号 ------------------------------------------------^[a-zA-Z0-9_]+$ //所有包含一个以上的字母、数字或下划线的字符串 //举例子连在一起 aA0_A001a_ ^[0-9]+$ //所有的正数 (也可以说是非负整数) //举例子 345500687008099900999^-?[0-9]+$ //所有的整数 (包括 负整数和整数) //举例子 -43443 或者 43443 ^-?[0-9]*.?[0-9]*$ //所有的小数 (包括正 副小数 小数点前后的位数无限长) //举例子 -10.00 或者100000.0000如果没小数点 后面肯定没数字, 所以前面加一个.? 来判断是否有小数点,按道理说可以不需要.?是多余的因为这个是专门判断小数的,如果没小数点了,还叫付数吗 [^a-z] //除了小写字母以外的所有字符 [^/^] //除了"/"和"^"字符之外的所有字符 [^"'] //除了双引号(")和单引号(')之外的所有字符
以上是"正则表达式的示例分析"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
字符
字符串
数字
等价
字母
开头
内容
小数
正则
表达式
要点
例子
整数
下划线
两个
也就是
单词
小数点
空格
示例
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库表中可以有几个主键
安卓软件开发格局图
php5.4 连接数据库
水果机下载软件开发
深圳南山软件开发培训的学校
javaee数据库查询
芜湖子木网络技术有限公司
网络安全知识星球
r1000服务器
手抄报网络安全人人有责
怎么修改数据库etc
软件开发详细设计书百度文库
网络安全周是什么
网络安全情景剧校园剧
淘宝买手游服务器会套路吗
中国什么炒股软件开发
数据库和数据挖掘的应用
南乐软件开发系统
怎么输入服务器ip
excel批量打印数据库标签
崇明区重型网络技术诚信服务
sci数据库中作者名字格式
数据库设计阶段的主要活动有哪些
网络安全工作责任领导分工
6618网络技术
互联网 科技项目
云数据库对软件开发行业冲击
数据库中的文字符号怎么定义
从数据库获取数据生成二维码
硕士开源软件开发