>  기사  >  웹 프론트엔드  >  Abba의 역방향 예측을 정규 표현식과 일치시키는 방법

Abba의 역방향 예측을 정규 표현식과 일치시키는 방법

php中世界最好的语言
php中世界最好的语言원래의
2018-03-30 14:07:012208검색

这次给大家带来正则怎么匹配Abba逆向前瞻,正则匹配Abba逆向前瞻的注意事项有哪些,下面就是实战案例,一起来看一下。

核心代码:

<script>
var s1 = 'acritan';
var s2 = 'bassarisk';
var s3 = 'commotive';
//找出不包含 "abba" 模式的单词
var r = /^(?!.*?(.)(.)\2\1)/i;
alert(r.test(s1)); // true
alert(r.test(s2)); // false
alert(r.test(s3)); // false
</script>

零宽断言(?!exp)

反先行断言

什么是反先行断言,使用 (?!exp) 匹配后面跟的不是exp。

php实例:

主要是想通过实例给大家说下这个正则的作用

$str="abcgwcab";
$parent='/bc(?!ww)gw/';
$str=preg_match($parent,$str,$match);
var_dump($str);
var_dump($match);
/**
输出:
int 1
array (size=1)
 0 => string 'bcgw' (length=4)
*/

解析:首先判断字符串是否包含bc,然后判断其后面不是ww,最后匹配gw。可以看出反向断言之前后之后,能够在添加其他匹配条件。

.*?

这个.*就是匹配非空字符任意长度,?就是非贪婪模式就是匹配最少的字符例如一个字符

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

正则全局匹配模式g修饰符的使用详解

正则表达式m修饰符(多行匹配)使用详解

위 내용은 Abba의 역방향 예측을 정규 표현식과 일치시키는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.