本文主要介绍简单总结一下正则表达式的语法(正则表达式基础知识),下面一起看看简单总结一下正则表达式的语法(正则表达式基础知识)相关资讯。
4.选择和分组
(1)分组
字符组[]:意味着匹配几个字符中的一个。
一个字符组可以简单地理解为一些字符的组合。一个字符组和普通字符的区别在于,abc普通字符是指匹配a、b、c,而字符组[abc]是指匹配a、b或c的同一位置;因为字符组本身的含义,这个字符组可以看作是一个普通的特殊字符。
共:共因为它也意味着将一个字符匹配到一个位置上的单个字符的操作也可以对其起作用;如:[a-z]{ 6 };
特殊性:特殊是因为:1。其他字符可能内外有别,比如-、。等。2.同一个位置可以有多个选择,但这个选择只限于一个字符;
字符组内外每个字符的区别:
-:在字符组内,代表一个范围;只有一个字符表示在字符组之外;
示例:
-字符集之外
脚本类型= 文本/javascript var str = 2016-8-20;;var reg =/16-8/g;console . log(str . match(reg));//16-8/script-在字符集中
脚本类型= 文本/javascript var str = 2016-8-20;;reg =/1[6-8]/g;console . log(str . match(reg));//16 /script-字符组外的普通字符只代表字符本身,所以匹配的是1后面跟着6后面跟着-8的字符串;所以它 第16-8节
-表示字符组中的一个范围,所以匹配的是1后跟6到8之间的任意数量的字符,所以是16;
。:表示字符组中的一个点;表示字符组之外的任何字符(查找单个字符,换行符和行尾除外)。
。在角色群之外。
脚本类型= 文本/javascript var str = 2016-8-20;;var reg =/6.8/g;console . log(str . match(reg));//6-8/脚本。在字符组内
脚本类型= 文本/javascript var str = 2016-8-20;;var reg = /6[。]8/g;console . log(str . match(reg));//null/script。在角色群之外。代表任何字符;所以匹配的是6,后面跟着任意一个字符然后是一串8,所以匹配的是6-8;
在人物群体中,只是一个普通人物代表自己;所以匹配的是6,后面是8。字符串为空;因为不匹配;
字符组也可以分为匹配字符组和排除字符组,主要是因为的含义发生了变化。
^:·卡雷特;
示例:
在角色组之外
脚本类型= 文本/javascript var str = 韩 ;var reg = /^ha/g;console . log(str . match(reg));///ha/script^在角色集里。
脚本类型= 文本/javascript var str = 韩 ;var reg = /[^0-9]/g;console . log(str . match(reg));// h,a,n/script脱字符号是[]之外的一个锚点,意思是匹配以某个字符开头的字符或字符串,在[]中表示除了。
注意:[a]表示匹配一个位置不等于a的字符。;不明白这个位置不是a,但是后者可以匹配一个空行。注意这个区别。
示例:
脚本类型= 文本/javascript var str = 韩 ;var reg = /n[^q]/g;console . log(str . match(reg));//null/script注意:本例n后面没有任何字符,所以匹配结果为空。如果按照上面的第二种理解,你可能会认为匹配结果是:n。
不管[]中有多少个字符,在相同的位置只会匹配其中的一个。如果我想在一个位置匹配一个字符串怎么办?
(2)选择
这时可以使用加|的组合,在正则表达式中表示或,而在正则表达式中划分一个范围;单独使用时,是没有意义的,但只有和其他量词一起使用才会显示出它的作用(let s讲简单的例子,分别是贪婪匹配和非贪婪匹配,所以我赢了 这里就不解释了);
示例:
脚本类型= 文本/javascript var str = 2016-8-20;;var reg =/(16-8)/g;console . log(str . match(reg));//16-8/script script type = 文本/javascript var str = 2016-8-20;;var reg =/16-8/g;console . log(str . match(reg));//16-8/script在这个例子中,它不 有没有括号并不重要,这意味着匹配字符串16-8。
当和|一起使用时,是多选结构,任何一个子表达式都可以匹配一个范围;|表示选择方向。
示例:
脚本类型= 文本/javascript var str = 格雷格雷 ;var reg =/gr[ea]y/g;console . log(str . match(reg));// grey,gray reg =/gr(e | a)y/g;console . log(str . match(reg));//grey,gray/script上面两个匹配的结果都是灰色和灰色,也就是说(|)的分支选择结构在一定程度上可以用[]代替。
示例:
脚本类型= 文本/javascript var str = 格雷格雷 ;var reg =/gre | ay | yg/g;console . log(str . match(reg));//gre,yg,ay/脚本输出结果:gre,yg,ay。
是否添加括号对结果有很大影响,例如:
^hello |世界|嗨:匹配是你好或世界或嗨。
(hello | world | hi):。比赛的起跑线是hello或者world或者hi。
注意:虽然多选结构有时可以用字符组来表示,也可以互相表示,但是一个字符组只能匹配目标文本中的单个字符,而每个多选结构本身可能是完整的、规则的,可以匹配任意长度的文本。
正则表达式中需要注意的几点:
1.在正则表达式中,空格字符也被视为常规字符;
2.-;。;[]内和[]外的*含义不一样。注意区别;注意字符组内外元字符的区别;
3.当[]加到几个字符上时,字符串被视为一个字符组,但对单个字符进行操作。*等等也可以,量词的混合使用和量词的混合使用以及分组选择会有一个贪婪和非贪婪匹配的概念,单独总结;
4.分支结构和字符组的区别;分支可以匹配任何长度的文本;一个字符集只能匹配一个字符;
5.注意一些概念的理解:比如【x】的意思是 匹配不等于x的字符。;而不是 只有当这个位置不是x来匹配 ;[x]背后的概念可以匹配{x,y}中的一个空行,?*理解;
6.决定匹配成功的是{x,y}中的x,x对匹配成功起着关键作用。
以上就是边肖为大家带来的正则表达式语法知识深度了解的全部叙述。希望对你有帮助。如果您有任何问题,请给我留言,边肖将及时回复您。非常感谢您对本页的支持!
标签:
匹配字符表示
了解更多简单总结一下正则表达式的语法(正则表达式基础知识)相关内容请关注本站点。
电脑硬盘怎么安装视频教程,西数硬盘安装视频教程
优启通支持nvme吗,优启通对bios 和 uefi 不用区分吗
笔记本显卡的样子(笔记本显卡是什么样子)
电脑突然开不了机是怎么回事儿,电脑开不了机是怎么回事
小白一键系统重装怎么样(小白一键重装系统安装在哪个盘)
简单总结正则表达式的语法(正则表达式基础知识)
1000块主机最好配置,1000元左右的电脑配置
三星note2 n719怎么样,谁能告诉我三星NOTE2怎么样
dns错误不能上网怎么办(dns出错连不上网)
惠普打印机墨盒怎么加碳粉(惠普打印机加墨粉视频教程)
oppor9无法root怎么办,手机oppor9 root不了怎么办
华硕电脑启动u盘装系统教程(华硕电脑用u盘重装系统教程图解)
win8系统恢复出厂设置教程(win8恢复出厂设置教程)
电脑有的软件名称出现乱码 是怎么回事(电脑下载软件名称乱码)
微信怎样删除视频号功能(微信怎样删除视频号里的视频)
笔记本电脑配置清单表,手提电脑配置
nvme固态驱动怎么装,请问怎样把系统导入到NVME固态盘
工程绘图笔记本电脑排名,推荐一电脑1性能可以反应要快2用于工程制图做图能力出众3
爱奇艺连续包月1元是什么意思呀(爱奇艺连续包月一元是什么意思)
苹果6的字体怎么改,苹果手机怎样调字体