正則表達式的初步了解
如果查看百度百科,你會看到關於正則表達式的起源等類似官方語言的介紹。但是,我不打算用這種正式的語言來介紹正則表達式。我試圖通過比較簡單容易理解的語言來幫助剛接觸正則的朋友快速入門!
所謂正則,簡單的來說就是通過各種符號來匹配相對應的文本,以方便我們快速找到自己所需要的內容!正則表達式不是易語言獨有,前面說了正則是用特定符號匹配出特定的文本。所以,一般的語言都會有正則表達式,例如php,JavaScript等。
這樣來理解的話,正則就很容易理解了,如果要學習的話,就要理解正則的符號的含義,只有理解了符號特定的含義,才能將符號組合表達出來!
一個經常使用的字符列表
正則表達式-字符表
| . |
點號 |
匹配任何單個字符(注:點號在字符組內不算元字符) |
| * |
星號 |
表示之前的元素出現任意次數或0次 |
| ? |
問號 |
前面元素出現0次或1次 |
| + |
加號 |
前面元素出現1次以上 |
| - |
連字符 |
注意:只有連字符在字符組內部時,並且出現在兩個字符之間時,才能表示字符的范圍; 如果出現在字符組的開頭,則只能表示連字符本身 |
| ^ |
脫字符 |
表示開頭。注意:^在字符組的頭部,將轉換成排除型字符 |
| $ |
美元符 |
表示結尾。 |
| \ |
轉義符 |
|
| [ ] |
字符組 |
范圍描述符。[a-z]表示從a到z之間的任意一個。 |
| \w |
|
英文字母和數字。即[0-9 A-Z a-z]。 |
| \W |
|
非英文字母和數字 |
| \s |
|
空字符,即[\t\n\r\f]。 |
| \S |
|
非空字符。 |
| \d |
|
數字,即[0-9]。 |
| \D |
|
非數字。 |
| \b |
|
詞邊界字符(在范圍描述符外部時),表示為單詞的分界符 |
| \B |
|
非詞邊界字符 |
| \t |
制表符 |
|
| {n} |
|
前面的元素字符出現n次 |
| {m,n} |
|
前面的元素最少出現m次,最多出現n次 |
| | |
|
選擇符 |
| ( ) |
|
群組,子表達式 |
|
|
|
點號.的使用
下面我們用點號.來查找下面源碼文本里面的“玖玖動力”



星號*的使用
還是用什么的源碼文本,查找“玖玖動力”

用這種方法匹配出來的結果是一樣的。
后面的問號?和加號+的使用方法跟上面的都是一樣,只是代表的次數不一樣,大家注意看下就行,這里就不對這兩個一一做演示了!
下面簡單的對連字符“-”做個演示:

上面是匹配出1到9的數字.
脫字符^和美元符$的使用
^表示開頭,如果在字符組頭部,就表示排除字符。
美元符$表示結尾!
下面簡單對這兩個字符做個演示:


字符組的和字符組的簡記法的理解
[]這個符號就是表示字符組,內部用連字符-連接,表示范圍。那么字符組的簡記法\w,\d等這種寫法就是字符組的簡記法。
例如\d就是表示數字,也就是[0-9]
這個大家理解下含義就可以了,使用的時候明白了含義使用起來也很簡單!
()群組,表達式的使用
<title>易語言正則表達式快速入門 - 玖玖動力 -QQ:7777777</title>
以這個文本舉例,取出里面的QQ:777777
先新建文本常量

然后我們來寫下面代碼

最后,我們來調試輸出看看結果

完美的匹配出了我們想要的結果了!
子表達式(),一個表達式里面可能有多個子表達式或者說群組,這個時候需要從左往右計數,依次計算索引!
到現在基本已經入門了正則表達式,對表達式有個很好的理解了,也可以滿足一般所需!
