a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Regex > 正文

談談我對正則表達式的認識

2020-03-16 21:07:05
字體:
來源:轉載
供稿:網友
正則表達式(Regular Expression)是一個概念,一種語法、句法的約定。每一種具體的語句(C#,Java,JavaScript)有其對于正則表達式的具體實現,并且會有差別。正則表達式30分鐘入門教程講述的是.net(C#)的正則表達式
 
 

文章定位(目標讀者)

•聽說過正則表達式,見過其使用的場合,但未能熟練掌握起來]的人
•至少看過一遍正則表達式30分鐘入門教程但未能完全掌握的人。

正則表達式是什么

正則表達式(Regular Expression)是一個概念,一種語法、句法的約定。每一種具體的語句(C#,Java,JavaScript)有其對于正則表達式的具體實現,并且會有差別。正則表達式30分鐘入門教程講述的是.net(C#)的正則表達式。

JavaScript的正則表達式
本人擅長的是JavaScript的正則表達式,這種正則表達式一個最大的特點是不支持零寬度正回顧后發斷言,原因很簡單,js是解釋執行的。細節等深入后再去理解。

語法查詢

正則表達式30分鐘入門教程
JavaScript RegExp 對象參考手冊
JavaScript String 對象參考手冊中的部分方法例如match,replace,search。

應用場景

正則表達式有兩大應用場景 1. 檢測用戶的輸入是否合法; 2. 從一堆信息中提取出自己想要的部分信息;這兩大應用場景最大的區別是,檢測輸入的合法性是針對整個輸入字符的,即要加上 ^去匹配字符串的開始及$去匹配字符串的結束,否則意義不大,至少本人還沒遇到過不加上的情景。而提取信息的場景一般涉及到全局搜索g

簡單的例子

光是看代碼,怎么也掌握不了正則表達式的,下面我們來實踐一下:打開chrome(如果你還沒安裝chrome,那你不能算是本文的目標讀者),當然安裝了firebug的firefox或者高版本的IE也OK,,按F12,調出開發人員工具。切換到如下的選項卡,輸入代碼

/Hello World/.test("Hello World")

談談我對正則表達式的認識

OK,以上代碼就是用一個正則表達式去檢測一個字符串是否包含"Hello World"這個特定字符。在JS中,最常用的就是Regexp的直接量,即在兩條斜杠//中加上正則表達式的語法。也就是說,在正則表達式30分鐘入門教程提及到的語法例如[aeiou]、/(?0/d{2}[) -]?/d{8}等等,置于兩條斜杠//中就成為一個JS的正則表達式對象(/[aeiou]/、//(?0/d{2}[) -]?/d{8}/),就擁有JavaScript RegExp 對象參考手冊中提到的方法,也能應用到JavaScript String 對象參考手冊的部分方法中,才能應用到實際編程中,具體參考上面的Hello World 示例代碼。最后,根據我自己的經驗,要自己去做一個實踐,例如

1.把本篇文章中body部分的內容提取出來,或者把所有的超連接中的文字提取出來

2.設計一個表單,驗證用戶的輸入,具體的驗證可以參考常用正則表達式

最后的話

以上是我本人學習正則表達式的一些體會,當時的體會就是:看到了很多語法細節,但不知道如何付諸實踐,在自己進行了一個小實踐后,終于明白。在此進行整理。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美精品免费在线观看 | 精一区二区 | 亚洲第一网站 | 99re视频| 亚洲久久久 | 日韩视频一区 | 狠狠撸在线视频 | 免费观看一区二区三区毛片 | а天堂中文最新一区二区三区 | 久久精品在线 | 欧美日韩精品一二区 | 国产成人久久 | 一区二区三区在线视频免费观看 | 三级黄在线观看 | 精品国产一区在线 | 成人亚洲精品久久久久软件 | 在线日韩视频 | 高清有码| 色网站免费 | 国产日韩在线视频 | 欧美涩 | 欧美日韩高清在线 | 成人a视频| 福利亚洲 | www国产亚洲精品久久网站 | 在线免费看黄色av | 婷婷精品| 国产精品a免费一区久久电影 | 涩久久| 亚洲视频在线一区二区三区 | 91精品久久久久久久久入口 | 色先锋影音 | 久久视频一区二区 | 99国产精品| 成人一二三区 | 欧美亚洲日本一区 | 99亚洲| 中文视频在线 | 欧美一级特黄aaaaaaa视频片 | 亚洲欧美v国产一区二区 | 亚洲免费观看视频 |