定义
正则表达式(Regular Expression)
用某种模式去匹配一类字符串的公式,主要用来描述字符串匹配的工具。
匹配
文本或字符存在不止一个部分满足给定的正则表达式,这是每一个这样的部分都被称为一个匹配。 匹配分为以下三种类型:
- 形容词性的匹配
即一个字符串匹配一个正则表达式 - 名词性的匹配
即在文本或字符串里匹配正则表达式 - 名词性的匹配
即字符串中满足给定的正则表达式的一部分
元字符
元字符(Metacharacter)是一类非常特殊的字符,它能够匹配一个位置或字符集合中的一个字符,元字符可以分为两种类型
- 匹配位置的元字符
- 匹配字符的元字符
元字符只能匹配一个字符位置,也就是一个匹配的单位是一个字符,而不是一个字符串
匹配位置的元字符
测试
^a
匹配第一个字母为a
的一行a$
匹配最后一个字母为a
的一行^a$
匹配只有一个字母a
的一行bStr
匹配以Str
为开头的单词ingb
匹配以ing
为结尾的单词bStringb
仅匹配String
这个单词
b
字符如何识别哪个是单词呢?
以标点符号或空格分隔的字符串将被识别为单词,而且 b
只能用于英文,不能用于中文
匹配字符的元字符
元字符都是按照单个字符进行匹配
测试
.
全部字符匹配w
匹配了全部的单词字符,除了下划线之外的标点符号和汉字都被排除在外W
匹配结果和w刚好相反,注意那个下划线是属于单词字符的