js 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。可以看出反向斷言之前後之後,能夠在新增其他匹配條件。
.*?
這個.*就是匹配非空字元任意長度,?就是非貪婪模式就是匹配最少的字元例如一個字元
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70015104/viewspace-2872418/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 正則式 REGEX - 例項
- js正則全域性匹配引發的血案JS
- js中split之正則運用(模式匹配)JS模式
- 探究js正則匹配方法:match和execJS
- 正則匹配規則2
- 正則匹配規則記錄
- 正則匹配數字
- Python正則匹配中文Python
- grep 多行 正則匹配
- PHP 正則匹配中文PHP
- Logstash之Grok正則匹配,讓正則進階!
- python的re正則匹配Python
- Laravel redis 正則匹配keysLaravelRedis
- 【JS逆向百例】cebupacificair 航空逆向分析JSAI
- 例項程式碼詳解正規表示式匹配換行
- Java處理正則匹配卡死(正則回溯問題)Java
- js表情正則 手機正則 郵箱正則JS
- java中url正則regex匹配Java
- 正則匹配的捕獲組
- 正則匹配方法及示例
- apisix~路由字首的正則匹配API路由
- 十分有用的壓箱底的正則例項
- Linux 中 grep -P 選項 perl正則 限制兩側進行匹配Linux
- shell正則匹配捕獲引用進行IP匹配
- 正則實現個位數補零程式碼例項
- 正則匹配之零寬斷言
- 正則匹配指定字元之前的字串字元字串
- 正則匹配開頭和結尾
- php正則匹配所有違規字元PHP字元
- JS 正則學習JS
- VIM-灰常有用的正則匹配
- python正則一些簡單匹配Python
- 小技巧系列:正則匹配img標籤
- 工具庫 --- Validator (JS正則)JS
- 正則匹配身份證有bug你知道麼?
- 學習筆記——正則匹配方法整理筆記
- 關於正則位置匹配(斷言)的技巧
- 正則表示匹配手機IMEI機身碼