小鎮(zhèn)樹(shù)妖--住在樹(shù)上的妖

          To follow the path: look to the master, follow the master, walk with the master, see through the master, become the master.

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            10 Posts :: 50 Stories :: 7 Comments :: 0 Trackbacks


          首先讓我們看兩個(gè)特殊的符號(hào)'^'和'$'。他們的作用是分別指出一個(gè)字符串的開(kāi)始和結(jié)束。例子如
          下:

          "^The":表示所有以"The"開(kāi)始的字符串("There","The cat"等);
          "of despair$":表示所以以"of despair"結(jié)尾的字符串;
          "^abc$":表示開(kāi)始和結(jié)尾都是"abc"的字符串——呵呵,只有"abc"自己了;
          "notice":表示任何包含"notice"的字符串。

          象最后那個(gè)例子,如果你不使用兩個(gè)特殊字符,你就在表示要查找的串在被查找串的任意部分——你

          不把它定位在某一個(gè)頂端。

          其它還有'*','+'和'?'這三個(gè)符號(hào),表示一個(gè)或一序列字符重復(fù)出現(xiàn)的次數(shù)。它們分別表示“沒(méi)有

          更多”,“一次或更多”還有“沒(méi)有或一次”。下面是幾個(gè)例子:

          "ab*":表示一個(gè)字符串有一個(gè)a后面跟著零個(gè)或若干個(gè)b。("a", "ab", "abbb",……);
          "ab+":表示一個(gè)字符串有一個(gè)a后面跟著至少一個(gè)b或者更多;
          "ab?":表示一個(gè)字符串有一個(gè)a后面跟著零個(gè)或者一個(gè)b;
          "a?b+$":表示在字符串的末尾有零個(gè)或一個(gè)a跟著一個(gè)或幾個(gè)b。

          你也可以使用范圍,用大括號(hào)括起,用以表示重復(fù)次數(shù)的范圍。

          "ab{2}":表示一個(gè)字符串有一個(gè)a跟著2個(gè)b("abb");
          "ab{2,}":表示一個(gè)字符串有一個(gè)a跟著至少2個(gè)b;
          "ab{3,5}":表示一個(gè)字符串有一個(gè)a跟著3到5個(gè)b。

          請(qǐng)注意,你必須指定范圍的下限(如:"{0,2}"而不是"{,2}")。還有,你可能注意到
          了,'*','+'和
          '?'相當(dāng)于"{0,}","{1,}"和"{0,1}"。
          還有一個(gè)'¦',表示“或”操作:

          "hi¦hello":表示一個(gè)字符串里有"hi"或者"hello";
          "(b¦cd)ef":表示"bef"或"cdef";
          "(a¦b)*c":表示一串"a""b"混合的字符串后面跟一個(gè)"c";

          '.'可以替代任何字符:

          "a.[0-9]":表示一個(gè)字符串有一個(gè)"a"后面跟著一個(gè)任意字符和一個(gè)數(shù)字;
          "^.{3}$":表示有任意三個(gè)字符的字符串(長(zhǎng)度為3個(gè)字符);

          方括號(hào)表示某些字符允許在一個(gè)字符串中的某一特定位置出現(xiàn):

          "[ab]":表示一個(gè)字符串有一個(gè)"a"或"b"(相當(dāng)于"a¦b");
          "[a-d]":表示一個(gè)字符串包含小寫(xiě)的'a'到'd'中的一個(gè)(相當(dāng)于"a¦b¦c¦d"或
          者"[abcd]");
          "^[a-zA-Z]":表示一個(gè)以字母開(kāi)頭的字符串;
          "[0-9]%":表示一個(gè)百分號(hào)前有一位的數(shù)字;
          ",[a-zA-Z0-9]$":表示一個(gè)字符串以一個(gè)逗號(hào)后面跟著一個(gè)字母或數(shù)字結(jié)束。

          你也可以在方括號(hào)里用'^'表示不希望出現(xiàn)的字符,'^'應(yīng)在方括號(hào)里的第一位。(如:"%[^a-zA-
          Z]%"表
          示兩個(gè)百分號(hào)中不應(yīng)該出現(xiàn)字母)。

          為了逐字表達(dá),你必須在"^.$()¦*+?{\"這些字符前加上轉(zhuǎn)移字符'\'。

          請(qǐng)注意在方括號(hào)中,不需要轉(zhuǎn)義字符。

          posted on 2006-09-06 09:01 jacky wu 閱讀(167) 評(píng)論(0)  編輯  收藏 所屬分類: PHP
          主站蜘蛛池模板: 田林县| 蕉岭县| 石泉县| 丰镇市| 尼木县| 无极县| 甘洛县| 中卫市| 开鲁县| 白山市| 沭阳县| 浦城县| 仁寿县| 太康县| 梨树县| 阳原县| 油尖旺区| 墨竹工卡县| 鹰潭市| 敦化市| 临颍县| 迁安市| 惠州市| 二连浩特市| 始兴县| 莫力| 绩溪县| 镇巴县| 永吉县| 舟山市| 雷山县| 五常市| 微山县| 古蔺县| 留坝县| 盈江县| 长治市| 尼勒克县| 霸州市| 玉田县| 安达市|