正则表达式是由一些字符和特殊符号组成的字符串,它描述了一个可以识别各种字符串的模式。在正则表达式中,引入了特殊字符来定义字符集、匹配自足、及重复模式,由于这些符号的引入,正则表达式可以匹配字符串合集,而不仅仅只是单个的字符串。
首先是最基本、最普通的正则表达式:仅仅用一个简单的字符串构成一个匹配字符串的模式(该字符串由正则表达式定义)。例如:正则表达式为“abc”,那么能够匹配这个模式的只有包含“abc”的字符串。
当然还涉及到一些特殊符号和字符,即元字符,正式因为元字符,正则表达式才具有强大的功能和灵活性。
常见的正则表达式符号和特殊字符:
(|):表示一个“从多个模式中选择其一”的操作。例如
正则表达式为:at|home
匹配的字符串则为:at或者home
(.):匹配除了换行符\n以外的任何字符
在匹配字符串的开始位置时,用到脱字符(^)或者特殊字符\A
在匹配字符串的末尾位置时,用到美元符号($)或者特殊字符\Z
如下一些边界绑定
利用字符集匹配特定字符:
那么也会遇到[]中(-)连接,用于指定一个字符的范围;以及脱字符(^)如果紧跟在左方括号后面,就表示不匹配给定字符集中的任何一个字符。
闭包操作符:星号或者星号操作符(*)将匹配 其左边的正则表达式出现零次或者多次的情况。(+)将匹配一次或者多次出现的正则表达式。(?)将匹配零次或一次出现的正则表达式。
表示字符集的特殊符号:(\w)用于表示全部字母数字的字符集,相当于[A-Za-z0-9]的缩写形式。(\s)表示空格字符。相应的大写则表示不匹配。