正则表达式
发布时间:2020-12-13 22:56:57 所属栏目:百科 来源:网络整理
导读:1.正则表达式 一种用来描述文本模式的特殊语法,当从一个文件或命令输出中抽取或过滤文本时,可以使用正则表达式( RE),它是一些特殊或不很特殊的字符串模式的集合。我们给出抽取操作应遵守的一些规则。这些规则由一些特殊字符或进行模式匹配操作时使用的元字符
1.正则表达式 一种用来描述文本模式的特殊语法,当从一个文件或命令输出中抽取或过滤文本时,可以使用正则表达式( RE),它是一些特殊或不很特殊的字符串模式的集合。我们给出抽取操作应遵守的一些规则。这些规则由一些特殊字符或进行模式匹配操作时使用的元字符组成。也可以使用规则字符作为模式中的一部分进行搜寻。例如,A将查询A,x将查找字母 x。 ^ 只只匹配行首 $ 只只匹配行尾 * 只一个单字符后紧跟 *,匹配0个或多个此单字符 [] 只匹配 [ ]内字符。可以是一个单字符,也可以是字符序列。可以使用表示 []内字符序列范围,如用 [1-5]代替[12345] 只用来屏蔽一个元字符的特殊含义。因为有时在shell中一些元字符有特殊含义。可以使其失去应有意义。 . 只匹配任意单字符 pattern{n} 只用来匹配前面 pattern出现次数。 n为次数 pattern{n,}m 只含义同上,但次数最少为 n pattern{n,m} n到m之间的次数 举例: 1. A{2}B A出现2次, AAB 2. A{4,}B A最少出现4次,AAAAB,AAAAAAB 3. A{2,4}B A出现2--4次 4. [0-9]{1,3}.[0-9]{1,3}; IP地址 5. ...x..x..x 可以匹配权限问题(ls -l } grep "...x..x..x") 6. ^d 匹配以d开有的字符串(ls -l | grep "^d") 7. ^$ 匹配所有的空行,经常与sed中使用替换规则 8. ^.$ 如果值包含一个字符的行 9. ja*k 可以匹配jack,jakk,jask,jacck,jaccck...... 10. [S,s]ystem 匹配System,system 11. [0-9]{2}-[0-9]{2}-[0-9]{2} 匹配格式dd-mm-yyyy 2.一些特殊的字符 $ . ' " [ ] ^ | 0 + ? 我们可以使用对他的作用进行屏蔽 ^s 这次就不是匹配s开头的了 *.txt 匹配任意的以.txt文件结尾的文件 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |