程序员

js Abba逆向前瞻正则匹配实例

作者:admin 2021-05-05 我要评论

核心代码: scriptvar s1 = 'acritan';var s2 = 'bassarisk';var s3 = 'commotive';//找出不包含 "abba" 模式的单词var r = /^(!.*(.)(.)\2\1)/i;alert(r.test(s...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

核心代码:

<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。可以看出反向断言之前后之后,能够在添加其他匹配条件。

.*?

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


原文链接:https://m.jb51.net/article/101030.htm

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • js Abba逆向前瞻正则匹配实例

    js Abba逆向前瞻正则匹配实例

  • 正则表达式小脚本(对输入内容进行处理)

    正则表达式小脚本(对输入内容进行处理)

  • PHP 正则表达式效率 贪婪、非贪婪与回

    PHP 正则表达式效率 贪婪、非贪婪与回

  • .NET CORE中比较两个文件内容是否相同

    .NET CORE中比较两个文件内容是否相同