欢迎来到天天文库
浏览记录
ID:40730978
大小:31.50 KB
页数:6页
时间:2019-08-06
《正则表达式入门》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、正则表达式入门(2009-04-1520:32:54)标签:正则表达式linuxvi入门it分类:学习公社看了一点EllieQuigley的《UNIXShell范例精解》,学了一点正则表达式入门的知识。总结一下:正则表达式是一种字符模式,用于在查找过程中匹配相同的字符。在大多数程序里,正则表达式都被扩在2个正斜杠“/”之间。(1)正则表达式元字符----------------------------------------------------------------------------------------------元字符功能示例解释--------------
2、--------------------------------------------------------------------------------^行首定位符/^love/匹配以love开头的行$行尾定位符/love$/匹配以love结尾的行.匹配一个字符/l..e/匹配包含l,后跟2个任意字符,再跟一个e的行*匹配0或任意个前一字符/o*ve/匹配包含任意个o后跟ve的行[]匹配集合中任意一个/[Ll]ove/匹配Love或者love[x-y]匹配范围中任意一个/[a-z]/匹配任意一个小写字符[^]匹配不在指定组内字符/[^a-z]/匹配非小写字母的一个字符
3、用于转义字符/love./匹配包含love后跟一个句号的行(以下是多数使用正则表达式元字符的UNIX程序都支持的元字符):<词首定位符/词尾定位符/love>/匹配以love结尾的词的行(viandgrep)(..)匹配标签/(love)1er/love模式被保存为标签1,此后1就等价于lovex{m}字符x的m次重复出现a{3}x{m,}字符x至少出现m次a{3,}x{m,n}字符x至少出现m次,至多n次a{2,8}(2)组合正则表达式元字符元字符可以组合成为更为复
4、杂一些的表达式,例如:2.1/^[A-Z]..$/查找的行以大写字母开头,后跟2个任意字符,后跟换行符2.2/^[A-Z][a-z]*3[0-8]/查找的行以大写字母开头,后跟0或任意个小写字母,后跟数字3,后跟一个0-8之间的一个数字2.3/[a-z]*./查找的行包含0个或者多个小写字母后跟一个句点2.4/*[A-Z][a-z][a-z]$/查找的行以若干空格开头,后跟一个大写字母2个小写字母,后跟换行2.5/^[A-Za-z]*[^,][A-Za-z]*$/查找的行以0或多个大小写字母开头,后面不是句号,后跟0或多个大小写字母,然后换行(3)使用举例可以找到多个匹配项
5、时,用n3.1关于^和[]Ihadalovelytimeonourlittlepicnic.Loverswereallaroundus.Itisspringtime.Ohlove,howmuchIadoreyou.Oh,buytheway,IthinkIlostmyglovessomewhereoutinthatfieldofclover.Didyouseethem?Icanonlyhopeloveisforever.Iliveforyou.It'shardtogetbackinthegroove.~~~/^[Ll]ove/说明:匹配以love或者Love开头3.2关于.Ih
6、adalovelytimeonourlittlepicnic.Loverswereallaroundus.Itisspringtime.Ohlove,howmuchIadoreyou.Oh,buytheway,IthinkIlostmyglovessomewhereoutinthatfieldofclover.Didyouseethem?Icanonlyhopeloveisforever.Iliveforyou.It'shardtogetbackinthegroove.~~~/l.ve/说明:匹配包含l后跟任意字符+ve的行3.3关于*Ihadalovelytimeonour
7、littlepicnic.Loverswereallaroundus.Itisspringtime.Ohlove,howmuchIadoreyou.Oh,buytheway,IthinkIlostmyglovessomewhereoutinthatfieldofclover.Didyouseethem?Icanonlyhopeloveisforever.Iliveforyou.It'shardtogetbackinthegroove.~~~/o*ve/说明:*是与前面字符紧密联系的,如果是/*a/则是表
此文档下载收益归作者所有