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

电脑网络 思享 296浏览
摘要:
=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

推荐阅读

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

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

WIN10系统登陆PIN码怎么取消

win10内置的杀毒系统提醒我需要用微软账号登录,然后设置PIN码验证,但其实我的电脑一直放在家里,没有设置密码的习惯,那么如何取消PIN码呢?本文将以Win10系统为例,讲解电脑开机时如何取消PIN码。首先,点击Windows 10桌面左下角的开始......

多个excle怎么合并成一个?xlsx文件合并工具

在办公中,我们有时需要将多个excel文件合并为一个excel文件。高版本的excel可能支持这样的操作,但是低版本如office2013及之前的版本不支持合并。为此,我根据网上的代码编写了一个小工具,可以快速实现最简单的excel文件合并。您必须在......