> CentOS > CentOS入门 >

Centos 下的正则表达式一些基本规则

  • 任何单个字符或一串字符都可以匹配字符本身,
  • ^ 符号(^)表示一行的开始;$ 符号($)表示一行的结束。
     
  • 要搜索特殊字符(例如 $ 符号),需要在这些字符前面加上反斜线(\)。例如, \$ 就表示查找 $,而不是一行的末尾。
     
  • 点(.)代表任何单个字符。例如,ad..n 代表 5 个字符项,前两个字符是 “ad”,最后一个字符是 “n”。中间两个字符可以是任何字符,但是只能是由两个字符组成。
     
  • 任何时候如果正则表达式包含在斜线中(例如 /re/),搜索就是通过文件顺序进行的。如果正则表达式包含在问号中(例如,?re?),搜索就是通过文件逆序进行的。
     
  • 方括号([])表示多个值,减号(-)表示值的范围。例如,[0-9] 与 [0123456789] 相同,[a-z] 就等效于搜索任何小写字符。如果一个列表的首字符是 ^ 符号,它就匹配不在这个清单中的任何字符。

表 1 给出了这些规则是怎么样真正进行匹配的。

表 1. 示例正则表达式例子说明[abc]匹配 “a”、“b”、“c” 之一[a-z]匹配从 “a” 到 “z” 的任何一个小写字符[A-Z]匹配从 “A” 到 “Z” 的任何一个大写字符[0-9]匹配从 0 到 9 的任何一个数字[^0-9]匹配任何除了 0 到 9 数字范围内的任何字符[-0-9]匹配从 0 到 9 的任何数字,或者是短横线(-)[0-9-]匹配从 0 到 9 的任何数字,或者是短横线(-)[^-0-9]匹配除从 0 到 9 的数字和短横线(-)之外的任何字符[a-zA-Z0-9]匹配任何字符或数字 (责任编辑:IT)