js正则表达式的使用(爬虫什么的用的多一点))

1.基础字元
/\s/ 表达式中需要有一个空格

/\S/ 需要有一个非空格

/\t/需要有一个tap

/\d/需要有一个数字

/\D/要有一个非数字

/\w/需要有一个_或者字母或数字

/\W/其余以外任意一个

/./不是换行都行  /\./则必须有个点

/\\/表示必须有一个\文本在字符串里\也是转义。不用\\语法就不对

\转义符。有意义与无意义相转换

2.边界元字符

(1.^符

/^\d/ 以数字开头就行

(2.$符

/\d$/以数字结尾

(3.^ $

/^\d$/从头到尾只能有1个数字,不能有别的

3.限定元字符(只修饰一个符号)

1)*

/\d*/ 表示前面的字符出现0次到多次,有就可以

2)+

表示前面的字符出现1次到多次

3)?

表示字符串只能是0或1次

4){n}

表示指定出现n次  /\d{3}/出现3次数字

5){n,}

表示字符串只能出现n个到多个

6){n,m}

n到m次

4.正则的贪婪与非贪婪(重点)

例子:

贪婪

1)reg=/\d+/

console.log(reg.exec('abc123456789sd'))

Array=123456789

非贪婪:(在限定符钱加?)

+?非贪婪+

reg=/\d+?/

console.log(reg.exec('abc123456789sd'))

Array=1


2)*与*?

reg=/\d*/

console.log(reg.exec('abc123456789sd'))

Array=" ";因为abc不是数字


console.log(reg.exec('123456789sd'))

Array="123456789 "


reg=/\d*?/

console.log(reg.exec('123456789sd'))

Array=" ",因为判断是安最少来就是0个

3){n,}?  安最少n个补。不带?安多个补

5.其他符号

(1.()把几个字符看成一个

(2./\d+(\s+)\d+/ 会产生单独捕获。

console.log(reg.exec('123    123'))

返回值:[0:'123    123',1:'   ']

reg=/(\d+(\s+))\d+/

返回值:[0:'123    123',1:'123   ',2:'   ']

(3.   (?:)带?: 就只是整体不捕获

(4.|(站位或)一般和()连用   ||逻辑或

(adc|dfe) **分开的是右边或左边全部

adc或dfe就可以

(5.[]占一个位子

reg=/[abcd]/ 表示或者有a  b c d就可以

[^]非里面任意一个都可以

[a-z]、[0-9]必须是连着的

[0-9a-zA-Z_]==\w

[.]就是. 不是非换行的任意字符

6.Pyhon

urllib与 re库与numpy

re.findall()

找URL,语法大致相同。只不过是输出匹配的字段

你可能感兴趣的:(js正则表达式的使用(爬虫什么的用的多一点)))