[精讚] [會員登入]
1280

[PERL] Regex 字元集(群組)

幾個Perl在regular express會用到的特殊符號notation:字元集

分享此文連結 //n.sfs.tw/12987

分享連結 [PERL] Regex 字元集(群組)@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-23 08:04:01 最後編修
2019-01-03 14:55:09 By 張○○
 

以下8個是perl的特殊符號代表著一群字元,用在正規表達式中,和別的語言正規表達式略有不同。

英淆稱為 character class,另外有兩個代表文字邊界用的字元 \b,\B

\s 空白字元 代表
        [ \t\r\n\f]  <==注意\t 前有一個空白

\S 非空白字元
        [^\s]
\d 數字字元
        [0-9]

\D 非數字字元
        [^0-9]

\w 文字字元
        [0-9a-zA-Z_]  <== 注意下底線 '_'

\W 非文字字元
        [^\w]


\b 字元邊界
        \bis

        isn't 比對成功
        what is it 比對成功
        .is 比對成功
        -is 比對成功

        this 比對不成功
        artist 比對不成功
        _is 比對不成功
        123is 比對不成功
 

\B 非字元邊界
        \Bis 比對成功 this, artist  ;比對不成功 --isn't, what is it

這兩個字符的意義簡單說:

\b 這字符代表不能接其它的a-zA-Z_0-9字元,也就是不能接 \w(或說一定要接\W);

\B 代表一定要接 a-zA-Z_0-9字元,也就是一定要接 \w

 

 

END

你可能感興趣的文章

[PERL] 03-條件式判斷 perl的條件式判斷

[PERL] 用substr切割及置換字串 perl用substr來切割及置換字串

[PERL] 22-日期和時間 Perl 取得日期時間的方法整理,使用 localtime等多種函數

[PERL] 06-運算子 #2 PERL的運算子介紹,總共有21種

[PERL] Perl 不立即輸出的列印緩衝區問題 解決Perl 不立即輸出而是最後一次輸出的列印緩衝區問題

[PERL] 常態分配亂數產生函數 一般而言我們使用程式內建的 rand 函數取得的亂數是平均分配的,但如果需要常態分配的亂數產生器該怎麼做?

隨機好文

UTF-8 BOM (Byte Order Mark) 的問題 在 Michael Kaplan 那看到 Every character has a story #4: U+feff

[CodeIgniter 3] 資料庫的使用方法整理2/2 CI3 承襲 CI2,有很多的builder class可以用,依各人的使用習慣,有人喜歡一堆sql字串,有人喜歡用helper

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

[AS3] 物件加上超連結的方法 物件加上超連結,可讓使用者點擊的方法

兩次使用InnoDB的慘痛經驗 Mysql 的Innodb引擎雖然好用,但是我得說說我兩次的慘痛經驗,這讓我考慮以後可能不會再使用innodb了