精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

「正則」初探正則匹配的魅力

開發(fā) 前端
今天給大家分享,簡(jiǎn)單的介紹如何入門正則表達(dá)式Regex,趕緊動(dòng)手學(xué)起來(lái)吧。

[[396560]]

大家好,我是TianTian。

今天要分享的內(nèi)容是正則表達(dá)式Regex。

某天中午正要拿起手機(jī)打把王者榮耀,突然微信來(lái)了條消息!

某位網(wǎng)友來(lái)電,問(wèn)我能不能幫忙看個(gè)字符串匹配的問(wèn)題。

我硬著頭皮答應(yīng)了,可是,我看到題目的時(shí)候。

[[396561]]

題目大概需要匹配檢索的是:

  • =A12/B14/D14..../H18
  • =C12 * D12 * H16...*F19

嗯,我翻開了我多年沒(méi)有碰的正則手冊(cè)。

初探Regex

首先,先簡(jiǎn)單介紹一下:

  • 正則表達(dá)式(也稱為regex或regexp)只是一種模式,可用于匹配字符的不同且通常是特定的組合。

我們可以使用這些模式來(lái)檢查和處理字符串,如何檢索呢,我們得知道如何構(gòu)造,創(chuàng)建正則表達(dá)式可能看起來(lái)像這樣:

  1. let dog; 
  2. rat = /dog/; 
  3. rat = new RegExp("dog"); 

有了表達(dá)式,那么我們?nèi)绾纹ヅ淠兀?dāng)然正則表達(dá)式有自己的可用方法,也可以在某些字符串方法中使用它們。

例如,.test是可用于正則表達(dá)式的方法。它返回是否在字符串中找到正則表達(dá)式的布爾值:

  1. let rat = /dog/; 
  2. rat.test('I saw a dog!');  // returns true 
  3. /rat/.test('I saw a dog!');  // returns true 

上面兩種調(diào)用.test的方式是等效的:也就是說(shuō),可以使用分配給regexp的變量或直接使用regexp來(lái)調(diào)用它。對(duì)于正則表達(dá)式的任何使用都是如此。重要的是要注意,正則表達(dá)式匹配必須精確,包括任何換行符,大寫字母和空白。例如:

  1. /dog/.test('I saw some dogs!');  // returns true 
  2. /dog/.test('Meet at the bad og 9');  // returns false 
  3. /dog/.test('Rats and doihs are not friends');  // returns false 

看到這里,肯定不理解,為什么要使用它吧,不急,往下看。

特殊字符

特殊字符是用于修改或指定正則表達(dá)式的字符組合的字符。最有用的特殊字符之一是方括號(hào)。方括號(hào)允許您表示目標(biāo)字符串中的字符可以是任意數(shù)量的字符!讓我們看看它們的作用:

  1. const bt = /b[aeiou]t/; 
  2. bt.test('bat');  // returns true 
  3. bt.test('bet');  // returns true 
  4. bt.test('bit');  // returns true 
  5. bt.test('bot');  // returns true 
  6. bt.test('but');  // returns true 
  7. bt.test('bpt');  // returns false 

想想看,括號(hào)里的一切都對(duì)應(yīng)于你要搜索的字符串中的一個(gè)字符。在這個(gè)有用的能力之上,我們可以使用"-"字符來(lái)指定一個(gè)特定的字符范圍!

  1. const nums = /[0-5]/; 
  2. nums.test('0');  //  returns true 
  3. nums.test('3');  //  returns true 
  4. nums.test('7');  //  returns false 

再者,比如,要指定所有的字母,你會(huì)做這樣的事情:

  1. const letters = /[A-Za-z]/; 
  2. letters.test('M');  // returns true 
  3. letters.test('y');  // returns true 
  4. letters.test('5');  // returns false 

另一個(gè)需要記住的特殊字符是 "+"字符。這表明一個(gè)特定的元素可以重復(fù)任何次數(shù)。讓我們看看它的作用。

  1. const bomb = /boo+m/;   
  2. bomb.test('boom!');  // returns true 
  3. bomb.test('Boom!');  // returns false 
  4. bomb.test('boooooooooooom!');  // returns true 

如果你想忽略大小寫怎么辦,可以在后面加個(gè)i。

  1. const bomb = /boo+m/i;   
  2. bomb.test('boom!');  // returns true 
  3. bomb.test('Boom!');  // returns true 
  4. bomb.test('boooooooooooom!');  // returns true 
  5. bomb.test('BOOOOOOOOOOOOM!');  // returns true 

比如我們常見的"?"字符也是一個(gè)有用的特殊字符。這個(gè)字符表示前面的字符可以包括也可以不包括。

  1. const color = /colou?r/;  
  2. color.test('color');  // returns true 
  3. color.test('colour');  // returns true 

你可能還需要關(guān)注的特殊字符是". "字符。這是個(gè)通配符。一個(gè)". "可以代表任何其他字符,不包括換行。

  1. const anything = /./;  
  2. anything.test('a');  // returns true 
  3. anything.test('1');  // returns true 
  4. anything.test('[');  // returns true 

嗯,先提這么幾個(gè)基礎(chǔ)的,我們?cè)賮?lái)看看其他的語(yǔ)法。

其他語(yǔ)法

\w "字符指的是任何字母數(shù)字字符。它的反義詞,"\W",指任何非字母數(shù)字字符。

  1. const alphaNumber = /\w/;   
  2. alphaNumber.test('a');  // returns true 
  3. alphaNumber.test('1');  // returns true 
  4. alphaNumber.test('&');  // returns false 
  5.  
  6. const notAlphaNumber = /\W/;  
  7. notAlphaNumber.test('a');  // returns false 
  8. notAlphaNumber.test('1');  // returns false 
  9. notAlphaNumber.test('&');  // returns true 

再介紹一個(gè),"\s "字符指的是任何空白字符,而"\S "字符指的是任何非空白字符。

  1. const whitespace = /\s/;   
  2. whitespace.test('a');  // returns false 
  3. whitespace.test('1');  // returns false 
  4. whitespace.test('&');  // returns false 
  5. whitespace.test(' ');  // returns true 
  6. whitespace.test('\n');  // returns true 
  7.  
  8. const notWhitespace = /\S/;  
  9. notWhitespace.test('a');  // returns true 
  10. notWhitespace.test('1');  // returns true 
  11. notWhitespace.test('&');  // returns true 
  12. notWhitespace.test(' ');  // returns false 
  13. notWhitespace.test('\n');  // returns false 

嗯,不能全部介紹完滴,還得自己查,那么有沒(méi)有總結(jié)性的圖呢,這個(gè)時(shí)候,當(dāng)然有。

一圖解千愁


手冊(cè)

這是一個(gè)第三方網(wǎng)站,推薦結(jié)合這個(gè),右邊的語(yǔ)法參考,基本上是上面的內(nèi)容。

  • https://c.runoob.com/front-end/854

左邊調(diào)試,中間是語(yǔ)法參考,右側(cè)是控制臺(tái),豈不美哉。

解題

匹配的格式是=A12/B12/C12.../K23中間是乘法也行。

想了很久,首先,我們是不是可以拆成三部分呢,一頭一尾和中間部分。

開頭,我們是不是可以這么匹配:

  1. reg = /^=[A-Z]+\d+/i; 

首先的是=開頭,然后是字母,接著是數(shù)字,考慮到可能是一個(gè)或者是多個(gè),得用“+”特殊字符。

然后我們看看預(yù)期:

  1. reg.test('=b12')  // true 
  2. reg.test('=C12') //  true 
  3. reg.test('=CC3') // true 
  4. reg.test('=CDdd35') //  true 
  5. reg.test('=CDdd 35')  // false 

嗯,我們?cè)趤?lái)看看,尾巴部分怎么寫:

  1. // 尾巴部分,應(yīng)該都是 /CC12, /B234,這樣子滴 
  2. reg = /(\/|\*)[A-Z]+\d+$/i 

首先,考慮到可能是乘法和除法,于是有這樣子的**(/|*)**,需要注意的是,需要轉(zhuǎn)義一下,然后以$結(jié)尾。

  1. reg.test('/cc')  // false 
  2. reg.test('/cc12') // true 

剩下的就是中間的部分了,也就是剩下多個(gè)形如: /B231這樣子的結(jié)構(gòu),于是:

  1. reg = /((\/|\*)[A-Z]+\d+$)*/i 

最后組合一下,就是這樣子的:

  1. const multiplicationAndDivisionReg = /^=[A-Z]+\d+((\/|\*)[A-Z]+\d*$)*(\/|\*)[A-Z]+\d+$/i; 

簡(jiǎn)單入門后,留一個(gè)思考題,之前面試看過(guò)一個(gè)有趣的題目,數(shù)字千分位。

  • '100000000.00'
  • // 輸出 '100,000,000.00'

趕緊來(lái)實(shí)戰(zhàn)一下吧。

最后

今天的分享,簡(jiǎn)單的介紹了如何入門正則表達(dá)式Regex,趕緊動(dòng)手學(xué)起來(lái)吧。

 

責(zé)任編輯:姜華 來(lái)源: TianTianUp
相關(guān)推薦

2022-08-29 15:26:58

MySQLSQL模式

2009-09-16 16:22:04

正則表達(dá)式匹配

2009-09-16 13:24:30

PHP正則表達(dá)式匹配

2009-09-16 18:08:14

正則表達(dá)式匹配單詞

2009-09-16 13:53:17

PHP正則表達(dá)式匹配

2010-03-10 18:57:53

Python正則表達(dá)式

2010-03-15 16:21:28

Python正則表達(dá)式

2010-03-04 15:20:20

Ubuntu Patt

2009-09-16 16:48:03

正則表達(dá)式匹配數(shù)字

2021-12-03 08:50:25

LeetCode正則表達(dá)式算法

2009-08-20 16:13:32

C#正則表達(dá)式匹配

2009-11-30 17:06:35

PHP ereg()函

2011-05-11 17:40:30

PHP正則表達(dá)式

2009-08-20 13:38:58

C#正則表達(dá)式

2009-11-30 17:22:24

PHP正則表達(dá)式多行匹

2009-09-16 17:38:49

正則表達(dá)式匹配任意字符

2010-07-21 10:43:25

Perl正則表達(dá)式匹配

2009-06-10 13:51:25

Java正則表達(dá)式匹配替換

2009-09-16 17:02:15

正則表達(dá)式匹配字符串

2012-04-28 15:22:46

PHP
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

亚洲乱熟女一区二区| 无码h肉动漫在线观看| 黄色在线播放网站| 国产精品一二二区| 久久久久久噜噜噜久久久精品| 超碰人人cao| 91高清视频在线观看| 91尤物视频在线观看| 欧美在线免费视频| 午夜黄色福利视频| 国产精品日本一区二区三区在线 | 色中色综合网| 欧美精品久久久久久久多人混战| 成人污网站在线观看| 国产v在线观看| 激情综合激情| 亚洲一级免费视频| 不卡中文字幕在线观看| 三级福利片在线观看| 9色porny自拍视频一区二区| 热99在线视频| 国产女人18水真多毛片18精品| 国产精品白浆| 欧美视频一区二| 国产一二三四五| 午夜影院免费视频| 精品亚洲免费视频| 午夜美女久久久久爽久久| 免费看91的网站| 亚洲午夜免费| 欧美在线观看一区二区| 香港三级日本三级a视频| 欧美视频综合| 国产91精品一区二区麻豆网站 | 日韩三级影视| 亚洲欧美另类久久久精品| 国产一区免费在线| 在线观看国产精品视频| 一本色道久久综合亚洲精品不卡| 深夜成人在线观看| 毛茸茸多毛bbb毛多视频| 国产专区精品| 欧美日韩一区二区欧美激情| 国产97在线 | 亚洲| 91av资源在线| 久久免费看少妇高潮| caoporen国产精品| 亚洲天堂网在线观看视频| 国产真实久久| 久久亚洲精品中文字幕冲田杏梨| 90岁老太婆乱淫| 国产精品99久久免费观看| 91精品国产全国免费观看| 国产男女激情视频| 日韩精品分区| 成人免费视频在线观看| 日韩av电影免费在线| 日产精品久久久久久久性色| 粉嫩aⅴ一区二区三区四区| 91视频国产高清| 在线免费一级片| 视频精品一区二区| 国外成人免费在线播放| 青草草在线视频| 91亚洲国产| 中文字幕亚洲在线| 性久久久久久久久久久| 一区二区三区免费在线看| 5566中文字幕一区二区电影 | 情侣偷拍对白清晰饥渴难耐| 久草精品在线| 亚洲欧美一区二区三区久久| 四虎永久免费影院| 卡通动漫精品一区二区三区| 欧美成人免费网站| 激情小说欧美色图| 亚洲一区二区三区在线免费| 日韩午夜在线观看| 三上悠亚 电影| 成人免费在线电影网| 亚洲第一二三四五区| 亚洲男人在线天堂| 加勒比久久高清| 亚洲欧美精品一区二区| 黄色a一级视频| 国产乱码精品一区二区亚洲 | 国产理论电影在线观看| 国产校园另类小说区| 日韩免费电影一区二区三区| 亚洲图片88| 综合婷婷亚洲小说| 免费极品av一视觉盛宴| 91九色在线播放| 欧美午夜电影在线| 亚洲 欧美 日韩系列| 日韩一级视频| 精品99一区二区| 国产呦小j女精品视频| 国产一区二区三区不卡视频网站| 一本色道久久综合狠狠躁篇的优点| 91视频免费看片| 91精品国产麻豆国产在线观看| 久久不射电影网| 久草免费在线视频观看| 国产日韩一区| 国产精品高潮呻吟久久av无限| 一级片视频网站| 国产成人亚洲综合a∨猫咪| 国产精品乱码一区二区三区| 久久久久国产精品嫩草影院| 中文字幕亚洲欧美在线不卡| 激情五月婷婷六月| 男女羞羞在线观看| 欧美在线影院一区二区| 深夜做爰性大片蜜桃| 精品三级av| 中文字幕亚洲图片| 国产精品成人久久| 毛片基地黄久久久久久天堂| 国产精品国产精品国产专区不卡| 国产欧美第一页| 91麻豆精东视频| 日本丰满大乳奶| 精品日本视频| 欧美tk—视频vk| 我不卡一区二区| 狠狠噜噜久久| 国产精品入口免费视频一| 亚洲精品一区二区三区新线路 | 国产精品久久免费观看| 午夜国产精品视频| 国产精品igao视频| 欧洲av在线播放| 国产精品午夜电影| 欧美 国产 综合| 久久久91麻豆精品国产一区| 亚洲色图18p| 国产精彩视频在线| 国产呦精品一区二区三区网站| 蜜桃视频成人| 好久没做在线观看| 91麻豆精品国产91久久久 | 成人免费毛片视频| 丁香天五香天堂综合| 亚洲一区二区三区四区中文| 一本大道色婷婷在线| 欧美成人伊人久久综合网| 免费观看a级片| 日韩视频一区| 国产成人精品日本亚洲11| 自拍视频在线网| 日韩欧美aⅴ综合网站发布| 中文字幕乱视频| 亚洲色图网站| 国产美女精品免费电影| 国产在线免费观看| 精品露脸国产偷人在视频| 夜夜爽久久精品91| 亚洲色图网站| 国产精品久久久久久超碰| 久久免费看视频| 色综合天天综合在线视频| 中国av免费看| 亚洲人成高清| 国产欧美亚洲日本| av中文字幕在线看| 日韩美一区二区三区| 久久国产波多野结衣| 久久精品国产免费看久久精品| 日韩精品久久久毛片一区二区| 亚洲精品一区| 国产午夜精品一区二区三区| 国产在线一级片| 欧美经典一区二区| 亚州精品一二三区| 91精品一区二区三区综合在线爱 | 亚洲精品视频播放| 欧美性猛交bbbbb精品| 26uuu另类欧美| 欧美 激情 在线| 国产一区二区电影在线观看| 国产成人一区二| 日本最新在线视频| 91精品国产乱| 国产在线拍揄自揄拍无码视频| 成人免费精品视频| 国产原创中文在线观看| 免费国产自久久久久三四区久久| 午夜精品久久久久久久99热| 日韩欧美电影在线观看| 欧美在线免费观看亚洲| 久久视频精品在线观看| 韩国三级中文字幕hd久久精品| av久久久久久| 久久黄色影视| 日本视频久久久| 巨大荫蒂视频欧美大片| 日韩欧美国产精品| 免费中文字幕在线| 不卡的av电影在线观看| 黄色片在线免费| 伊人久久大香线| 久久精品日韩| 国产综合色在线观看| 欧美日韩999| 懂色av成人一区二区三区| 福利一区视频在线观看| 亚洲欧美卡通动漫| 不卡的av网站| 五月激情婷婷在线| 99国产精品99久久久久久粉嫩| 日韩av一区二区三区在线| 日韩一区二区三免费高清在线观看| 欧美激情手机在线视频| 国产视频第一区| 日韩欧美三级在线| 超碰在线观看91| 亚洲综合一二三区| 欧美人与禽zoz0善交| 国产一区二区三区免费播放| 国产最新免费视频| 午夜精品久久99蜜桃的功能介绍| 欧美日韩电影一区二区| 秋霞一区二区三区| 欧美中文在线视频| 激情视频在线观看| 亚洲无限av看| 精品久久久久一区二区三区| 精品福利一区二区三区| 国产sm主人调教女m视频| 欧美三级欧美一级| 国产一卡二卡三卡| 色婷婷久久久亚洲一区二区三区| 免费看日韩毛片| 天天综合网天天综合色 | 岛国av一区二区在线在线观看| 久久久久性色av无码一区二区| 成人欧美一区二区三区1314| 日韩在线视频免费看| 国产精品三级视频| 亚洲激情图片网| 国产精品久久免费看| 69精品无码成人久久久久久| 久久久久久麻豆| 亚洲区免费视频| 国产日韩欧美高清| 蜜桃av乱码一区二区三区| 欧美国产一区二区在线观看| 亚洲国产日韩一区无码精品久久久| 久久久久久久精| 欧美波霸videosex极品| 国产精品无人区| 国产尤物在线播放| 亚洲女与黑人做爰| 欧美黄色一级网站| 亚洲成人久久影院| 亚洲第一精品在线观看| 91久久精品一区二区三区| 最新中文字幕免费| 777久久久精品| 精品国产乱码一区二区三 | 久久综合之合合综合久久| 久久久精品国产亚洲| 人人澡人人添人人爽一区二区| 欧美国产日本在线| 忘忧草在线日韩www影院| 日本sm极度另类视频| 日韩国产一二三区| 97视频资源在线观看| 欧美三级电影在线| 翔田千里亚洲一二三区| 久久中文字幕av| 国产激情片在线观看| 在线亚洲一区| 啊啊啊国产视频| 国产不卡视频在线播放| 无遮挡aaaaa大片免费看| 中文字幕av一区二区三区| 婷婷伊人五月天| 五月天激情小说综合| 国产三级理论片| 精品裸体舞一区二区三区| 欧美一区二区少妇| 丝袜美腿亚洲一区二区| a级片在线免费| 国产啪精品视频| aaa国产精品| 色一情一乱一伦一区二区三欧美 | 色婷婷综合久久久久中文字幕| 久久99精品久久久久| 水蜜桃av无码| 成人免费在线观看入口| 综合激情网五月| 日韩一区二区视频在线观看| 视频国产一区二区三区| 久久这里只有精品99| 波多野结衣亚洲一二三| 99精品欧美一区二区三区| 欧洲视频一区| 成年在线观看视频| 开心九九激情九九欧美日韩精美视频电影| 女教师高潮黄又色视频| 国产精品久久久久久亚洲毛片| 国产精品第72页| 制服丝袜成人动漫| 国模吧精品人体gogo| 欧美黑人xxx| 99久久久国产| 日韩欧美三级电影| 99精品热视频只有精品10| 欧美xxxxxbbbbb| 国产欧美一区二区精品忘忧草 | 欧美色图免费看| 色婷婷中文字幕| 欧美激情xxxxx| 日韩专区视频网站| 视频一区亚洲| 视频一区二区欧美| 在线免费观看日韩av| 亚洲高清免费在线| 国产激情视频在线播放 | 疯狂试爱三2浴室激情视频| 色婷婷亚洲综合| 亚洲色图21p| 国内精品久久久久影院 日本资源| 91麻豆精品国产综合久久久 | 日韩精品一区二区三区老鸭窝 | 久久久亚洲国产天美传媒修理工| 亚洲资源在线| 亚洲一区三区视频在线观看| 日本亚洲视频在线| 蜜桃传媒一区二区亚洲| 色综合一个色综合| 青青草视频在线免费观看| 国产91|九色| 亚洲黄页网站| 浮妇高潮喷白浆视频| 92国产精品观看| 国产又大又黄又粗| 亚洲欧美中文字幕| 吞精囗交69激情欧美| 日韩经典在线视频| 蜜臀久久99精品久久久久久9 | 欧美日韩高清| www日韩在线观看| 国产亚洲女人久久久久毛片| 无码人妻一区二区三区免费 | 国产精品扒开做爽爽爽的视频| 国产精品视频1区| 97国产成人高清在线观看| 亚洲色图久久久| 国产精品色哟哟网站| 97国产精品久久久| 欧美裸体男粗大视频在线观看| 欧美成年网站| 欧美一级免费播放| 99国产精品久久久| 久久久久久不卡| 亚洲一二三在线| www.成人| 美脚丝袜脚交一区二区| 久久综合色综合88| 在线观看毛片网站| 九九精品视频在线| 亚洲人成亚洲精品| 成人免费视频久久| 中文字幕一区av| 免费观看黄一级视频| 人人做人人澡人人爽欧美| 93在线视频精品免费观看| 一级全黄裸体片| 日韩欧美999| 黄网页免费在线观看| 国产精品一区二区免费| 久久一区二区三区超碰国产精品| 黄免费在线观看| 日韩免费视频一区二区| 刘亦菲一区二区三区免费看| 亚洲一区二区不卡视频| 成人动漫一区二区在线| 人人妻人人爽人人澡人人精品 | 精品亚洲一区二区三区| 国产毛片精品久久| 91黄色在线看| 亚洲国产精品成人综合| 亚洲av无码片一区二区三区 | 国产欧美一区二区精品忘忧草| 国产精品久久久久久久免费看| 久久琪琪电影院| 日韩啪啪电影网| zjzjzjzjzj亚洲女人| 欧洲精品中文字幕| 丁香花电影在线观看完整版| 色一情一乱一伦一区二区三欧美| 国产盗摄女厕一区二区三区| 亚洲不卡在线视频| 久久这里只有精品99| 国产一区二区三区四区五区传媒| 免费高清视频在线观看| 91精品办公室少妇高潮对白|