Abba の逆先読みを正規表現と照合する方法

php中世界最好的语言
リリース: 2018-03-30 14:07:01
オリジナル
2244 人が閲覧しました

这次给大家带来正则怎么匹配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 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!