2009年1月13日

regexp 五頁

RegExp 一頁 | 二頁 | 三頁 | 四頁 | 五頁 | 特徵 | 方法 | 速查表
\v \w \W \n \0 \xhh \uhhhh
\v

字碼,垂直跳行。

  • 程式用法:

    <script type='text/javascript'>
    var s='Hell\vo Wendy';
    document.write( s+'<br />'+ 
             s.replace(/\v/gi, 'x' ) );
    </script>

  • 執行結果:

    Hell o Wendy
    Hellxo Wendy

\w

英文大小寫字母,數字,底線”_”。等於 [A-Za-z0-9_]。

  • 程式用法:

    <script type='text/javascript'>
    var s='give me 5!';
    document.write( s.replace(/\w/gi, 'x' ) );
    </script>

  • 執行結果:

    xxxx xx x!

\W

字母不屬於英文大小寫字母,數字,底線”_”。等於 [^A-Za-z0-9_]。

  • 程式用法:

    <script type='text/javascript'>
    var s='give me 5!';
    document.write( s.replace(/\W/gi, 'x' ) );
    </script>

  • 執行結果:

    givexmex5x

\n

n 是正整數,表第 n 個存入括號。將前面第 n 個存入陣列中的符合子字串,當作文法規則。

  • 程式用法:

    <script type='text/javascript'>
    var s=":joe  =456   @456";
    document.write( s.replace(/:([a-zA-Z]+)\s+=(\d+)\s+@\2/, 'x' ) +'<br />');
    document.write( RegExp.$1 +' '+ RegExp.$2 +'<p>');
    document.write( s.replace(/:([a-zA-Z]+)\s+=(\d+)\s+@\1/, 'x' ) +'<br />');
    document.write( RegExp.$1 +' '+ RegExp.$2);
    </script>

  • 執行結果:

    x
    joe 456

    :joe =456 @456
    joe 456

\0

空字元。其後不要接數字。

  • 程式用法:

    <script type='text/javascript'>
    var s='Hell\0o Wendy';
    document.write( s+'<br />'+ 
             s.replace(/\0/gi, 'x' ) );
    </script>

  • 執行結果:

    Hello Wendy
    Hellxo Wendy

\xhh

ASCII 碼,兩位 16 進位數。

  • 程式用法:

    <script type='text/javascript'>
    var s='Hell\x3do Wendy';
    document.write( s+'<br />'+ 
             s.replace(/\x3d/gi, 'x' ) );
    </script>

  • 執行結果:

    Hell=o Wendy
    Hellxo Wendy

\uhhhh

獨角碼,四位 16 進位數。

  • 程式用法:

    <script type='text/javascript'>
    var s='Hell\u3041o Wendy';
    document.write( s+'<br />'+ 
             s.replace(/\u3041/gi, 'x' ) );
    </script>

  • 執行結果:

    Hellぁo Wendy
    Hellxo Wendy


©2008-2009 by ant2legs, All Rights Reserved. ant2legs 擁有其製作的文章,圖片與程式的著作權,所有權利保留。