采集器:常用正则表达式语法

正则表达式是一种表达文本模式(即字符串结构)的方法,有点像字符串的模板,常常用作按照“给定模式”匹配文本的工具,简单概括就是模糊匹配特定内容。

比如,正则表达式给出一个正整数的模式,然后用它来确定一个字符串是否为正整数,正则:[1-9]\d*

数据采集器一般都支持使用正则语法来提取数据。简数采集器也支持各种正则语法,并内置了很多常见正则提取的表达式,用户只需要点需要的按钮,即可填入正则表达式。常见有:日期、IP、链接URL、email、身份证号等等。


常用的元字符

有特殊含义,不代表字面的意思;

1、点字符(.)

匹配除回车(\r)、换行(\n) 、行分隔符和段分隔符以外的所有字符。


2、位置字符

^ 表示字符串的开始位置

$ 表示字符串的结束位置


3、选择符(|)

竖线符号(|)在正则表达式中表示“或关系”(OR),即a|b表示匹配a或b。


4、转义符
正则模式中,需要用斜杠转义的,一共有12个字符:^、 .、 [、 $、 (、 )、 |、 *、 +、 ?、 {和\\。


5、预定义模式

    \d 匹配0-9之间的任一数字,相当于[0-9];

    \D 匹配所有0-9以外的字符,相当于[^0-9];

    \w 匹配任意的字母、数字和下划线,相当于[A-Za-z0-9_];

    \W 除所有字母、数字和下划线以外的字符,相当于[^A-Za-z0-9_];

    \s 匹配空格(包括制表符、空格符、断行符等),相等于[\t\r\n\v\f];

    \S 匹配非空格的字符,相当于[^\t\r\n\v\f];


6、量词符

    ? 问号表示某个模式出现0次或1次;

    * 星号表示某个模式出现0次或多次;  

    + 加号表示某个模式出现1次或多次;


简数采集支持使用的正则表达式