《正規表示式必知必會》學習筆記以及示例文件

alberthao發表於2020-04-18

前言

最近又把正則拿出來看。這本書還是要複習一下的。有示例,可以動手跟著複習一遍。 實驗工具你可以到這裡下載: http://www.regexlab.com/zh/mtracer/ 還有一個選擇是sublime text。

1 正則的用途

正規表示式簡稱正則。我們可以用它來匹配字串。搜尋字串,例如搜尋car,Car,CAR。 當然也可以用來做替換。例如將http://www.ituring.com.cn 替換為<a href="http://www.ituring.com.cn" >圖靈科技</a>

2 匹配單個字元

我們用英文的句點來匹配單個字元。.a.能夠匹配到什麼?如果我們要匹配最後三行,應該怎麼寫?
示例文字: sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
europe2.xls
na1.xls
na2.xls
sa1.xls
.a.\.xls試試能匹配到什麼?\.指什麼你知道嗎?

3 匹配一組字元

請問如果要在下面文字中,我只想匹配n和s開頭的文字,該如何做?
示例文字: sales1.xls
orders3.xls
sales2.xls
sales3.xls
apac1.xls
europe2.xls
na1.xls
na2.xls
sa1.xls
ca1.xls
[ns]a.\.xls怎麼樣呢?

我們再加一組,再看看[ns]a.\.xls匹配的對不對。

sales1.xls  
orders3.xls  
sales2.xls  
sales3.xls  
apac1.xls  
europe2.xls  
na1.xls  
na2.xls  
sa1.xls  
ca1.xls  
usa1.xls  

再試試[ns]a[0-9]\.xls
enter image description here 小練習,你來試一下,要匹配下面的十六進位制顏色程式碼,該怎麼寫呢?

body {
background-color: #fefbd8; }
h1 {
background-color: #0000ff;}
div {
background-color: #d0f4e6;}
span {
background-color: #f08970;}

取反^的示例,下面資料中,如何取出sam.xls:
orders3.xls
sales2.xls
sales3.xls
apac1.xls
europe2.xls
sam.xls
na1.xls
na2.xls
sa1.xls

4 元字元

元字元包括- \[]

<body>  
<h1>Welcome to my Homepage</h1>  
Content is divided into two sections:<br/>  
<h2>SQL</h2>  
Information about SQL.  
<h2>RegEx</h2>  
Information about Regular Expressions.  
<h2>This is not valid HTML</h3>  
</body>  `

enter image description here

未完,待續

相關文章