正则表达式中?=、?<=、?!、?<!的使用区别

电脑网络 思享 97浏览
摘要:
=exp2):查找exp1后跟exp2。[0-9]+)run OOB/g;//找到runoob。前面没有数字的console.log//打印googlerunoob中的runoob。

?=用法

exp1(?=exp2):查找exp1后面是exp2的exp1.

var str = '123456runoob123runoob456';
var r = /runoob(?=[d+])/g;//查找数字前面的runoob
console.log(r.exec(str));//打印的是runoob123中的runoob

?<=用法

(?<=exp2)exp1:查找 exp1前面是exp2的exp1.

var str = '123456runoob-googlerunoob456';
var r = /(?<![0-9]+)runoob/g;//查找前面不是数字的runoob
console.log(r.exec(str));//打印的是googlerunoob中的runoob

?!用法

exp1(?!exp2):查找后面不是 exp2 的 exp1.

var str = '123456runoob-google123runoob456';
var r = /runoob(?![0-9]+)/g;//查找后面不是数字的runoob
console.log(r.exec(str));//打印的是runoob-google中的runoob

?<!用法

(?<!exp2)exp1:查找 exp1前面不是exp2的exp1。

var str = '123456runoob-googlerunoob456';
var r = /(?<![0-9]+)runoob/g;//查找前面不是数字的runoob
console.log(r.exec(str));//打印的是googlerunoob中的runoob

推荐阅读

正则表达式中[^>]是什么意思

正则表达式[^>]是什么意思,怎么使用...

如何清除谷歌浏览器旧的重定向缓存

当我们设置301重定向到网页时,浏览器会缓存,下次访问网页时,我们会拿着缓存直接跳转。即使取消了301跳转,我们访问网页的时候还是会跳转。此时,我们不应该清除整个浏览器缓存,而是禁用当前页面的缓存。下面是Chrome和Firefox浏览器如何禁用当前......

excel打开csv文件乱码怎么回事,怎么解决

CSV是逗号分隔值的缩写,通常是纯文本文件。CSV格式是一种分隔的数据格式,逗号字符由字段/列分隔,换行符由记录/行分隔。通常用EXCEL可以正常打开CSV文件,但很多人都有这种经历。用EXCEL打开后,本该出现中文的地方变成了乱码。这种情况怎么解决......