爬虫需要正则表达式,网页账户登录也有运用到正则表达式。
正则表达式测试工具:编辑器内置的工具,控制台、regexr-cn.com
一、限定符
?:前面那个字符可以出现0次、1次;
*:前面那个字符可以出现0次、多次
+:匹配前面的字符一次或多次
{n}:匹配前面的字符确定的有n次
{n,m}:匹配前面字符出现次数2-6次
二、或运算符
|:对象包含“|”左边或者右边的字符均可以匹配
1 字符类
1)[ABC]:匹配所包含的任意一个字符
2)[a-zA-Z]:匹配任意的的英文字符
3)[a-zA-Z]:匹配所有英文字符和数字
4)[ ^0-9 ]:匹配所有非数字字符
2 元字符 等
\d: 匹配一个数字字符。等价于 [0-9]。
\D:匹配一个非数字字符。等价于 [ ^0-9 ]。
\w:匹配字母、数字、下划线。等价于’[A-Za-z0-9_]’。
\W:匹配非字母、数字、下划线。等价于 ‘[ ^A-Za-z0-9_]’。
\s:匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。
\S:匹配任何非空白字符。等价于 [ ^ \f\n\r\t\v]。
\b:匹配单词边界,就是单次和空格间的位置
^:匹配输入字符串的开始位置。
$:匹配输入字符串的结束位置。
\:将下一个字符标记为特殊字符。
*:匹配前面的子表达式零次或多次。
?:匹配前面的子表达式零次或一次。
+:匹配前面字符一次或多次
.:匹配除换行符 \n 之外的任何单字符。要匹配 . ,请使用 . 。
(pattern):匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 ‘(’ 或 ‘)’。
三、实例
1)匹配正确的座机电话号码
2)提取apple
学习资料可以参考https://www.runoob.com/regexp/regexp-syntax.html