From 9b424b14df62b9ac62f98f3b720d039f3e2fc222 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BB=93=E5=8F=91=E5=8F=97=E9=95=BF=E7=94=9F?= Date: Sun, 23 Dec 2018 23:40:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=AD=A3=E5=88=99=20=E5=88=86=E7=BB=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../JavaScript/正则表达式重新入门(1).md | 39 +++++++++++++++++- source/images/JavaScript/regex/未添加分组.png | Bin 0 -> 10275 bytes source/images/JavaScript/regex/添加分组.png | Bin 0 -> 12662 bytes 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 source/images/JavaScript/regex/未添加分组.png create mode 100644 source/images/JavaScript/regex/添加分组.png diff --git a/source/_posts/JavaScript/正则表达式重新入门(1).md b/source/_posts/JavaScript/正则表达式重新入门(1).md index 1275d0c..253b6aa 100644 --- a/source/_posts/JavaScript/正则表达式重新入门(1).md +++ b/source/_posts/JavaScript/正则表达式重新入门(1).md @@ -102,6 +102,7 @@ let reg2 = /[0-9]/g ### 量词 用于指定某个组合出现的数量 + |字符|含义| |---|---| |?|0次或1次| @@ -173,5 +174,39 @@ let reg = /\d{2}(?=[a-zA-Z]{2})/ |零宽负向后顾|exp(? 要让后一个数字和前一个数字不同 +就必须要引用前一个数字, 那么只能对分组进行引用 +同时配合零宽负向前瞻 + +```javascript +let reg = /(\d{1})(?!\1)\d{1}/ +reg.test('a32') // true +reg.test('a55') // false +``` ++ `(\d{1})`这里代表的是匹配一个数字, 这个简单 ++ `(?!\1)`这里代表的是后面的字符与第一分组不同(但是不占用字符) ++ `\d{1}`这里代表后面还是一个数字 + +所以就可以达到匹配两个连续数字, 并且这两个数字不同了 diff --git a/source/images/JavaScript/regex/未添加分组.png b/source/images/JavaScript/regex/未添加分组.png new file mode 100644 index 0000000000000000000000000000000000000000..860f96e6472c6f76bb11100a3cd3f936043be004 GIT binary patch literal 10275 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 Q?^6Keq?9G=#ZANh59<^Xp#T5? literal 0 HcmV?d00001