本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
          隨筆-230  評(píng)論-230  文章-8  trackbacks-0
          一、正則表達(dá)式是什么?為什么要用正則表達(dá)式?
          1)數(shù)據(jù)格式的有效性驗(yàn)證:你可是已經(jīng) 見識(shí)過了。
          2)文本替換:文本編輯器你應(yīng)該見識(shí)多了,哪個(gè)里面沒有搜索和替換功能呢?如果你用過這些,那末,你已經(jīng)是正則表達(dá)式的受益者了。
          3)提取字符串:沒有他,據(jù)說搜索引擎都不工作。呵呵。
          正則表達(dá)式中的特殊字符
          /.../:代表一個(gè)模式的開始和結(jié)束。
          ^:用來匹配輸入字符串的開始。(定位符)
          $:用來匹配輸入字符串的結(jié)束。(定位符)
          :是個(gè)轉(zhuǎn)義字符,d就代表匹配一個(gè)數(shù)字。(不會(huì)不知道轉(zhuǎn)義吧?)
          {n}:代表前邊子模式匹配的次數(shù)。(限定符)
          字符 含意
          \

          做為轉(zhuǎn)意,即通常在"\"后面的字符不按原來意義解釋,如/b/匹配字符"b",當(dāng)b前面加了反斜桿后/\b/,轉(zhuǎn)意為匹配一個(gè)單詞的邊界。
          -或-
          對(duì)正則表達(dá)式功能字符的還原,如"*"匹配它前面元字符0次或多次,/a*/將匹配a,aa,aaa,加了"\"后,/a\*/將只匹配"a*"。

          ^ 匹配一個(gè)輸入或一行的開頭,/^a/匹配"an A",而不匹配"An a"
          $ 匹配一個(gè)輸入或一行的結(jié)尾,/a$/匹配"An a",而不匹配"an A"
          * 匹配前面元字符0次或多次,/ba*/將匹配b,ba,baa,baaa
          + 匹配前面元字符1次或多次,/ba*/將匹配ba,baa,baaa
          ? 匹配前面元字符0次或1次,/ba*/將匹配b,ba
          (x) 匹配x保存x在名為$1...$9的變量中
          x|y 匹配x或y
          {n} 精確匹配n次
          {n,} 匹配n次以上
          {n,m} 匹配n-m次
          [xyz] 字符集(character set),匹配這個(gè)集合中的任一一個(gè)字符(或元字符)
          [^xyz] 不匹配這個(gè)集合中的任何一個(gè)字符
          [\b] 匹配一個(gè)退格符
          \b 匹配一個(gè)單詞的邊界
          \B 匹配一個(gè)單詞的非邊界
          \cX 這兒,X是一個(gè)控制符,/\cM/匹配Ctrl-M
          \d 匹配一個(gè)字?jǐn)?shù)字符,/\d/ = /[0-9]/
          \D 匹配一個(gè)非字?jǐn)?shù)字符,/\D/ = /[^0-9]/
          \n 匹配一個(gè)換行符
          \r 匹配一個(gè)回車符
          \s 匹配一個(gè)空白字符,包括\n,\r,\f,\t,\v等
          \S 匹配一個(gè)非空白字符,等于/[^\n\f\r\t\v]/
          \t 匹配一個(gè)制表符
          \v 匹配一個(gè)重直制表符
          \w 匹配一個(gè)可以組成單詞的字符(alphanumeric,這是我的意譯,含數(shù)字),包括下劃線,如[\w]匹配"$5.98"中的5,等于[a-zA-Z0-9]
          \W 匹配一個(gè)不可以組成單詞的字符,如[\W]匹配"$5.98"中的$,等于[^a-zA-Z0-9]。


                  function check_number(obj){
                      
          if(/^\d+$/.test(obj.value)){
                          
          return true;
                      }
          else{
                          alert('請(qǐng)輸入數(shù)字
          !');
                          
          return false;
                      }
                  }
          結(jié)合上面的特殊字符說明,我們就知道這是一個(gè)檢驗(yàn)obj的值是否是數(shù)字。相關(guān)例子可以參考http://www.javaeye.com/topic/30728

        1. 創(chuàng)建:
          一個(gè)文本格式或正則表達(dá)式構(gòu)造函數(shù)
          文本格式: /pattern/flags
          正則表達(dá)式構(gòu)造函數(shù): new RegExp("pattern"[,"flags"]);
        2. 參數(shù)說明:
          pattern -- 一個(gè)正則表達(dá)式文本
          flags -- 如果存在,將是以下值:
          g: 全局匹配
          i: 忽略大小寫
          gi: 以上組合
          <script language="javascript">
          var reg=new RegExp("終古","g"); //創(chuàng)建正則RegExp對(duì)象
          var stringObj="終古人民共和國(guó),終古人民";
          var newstr=stringObj.replace(reg,"中國(guó)"); 
          alert(newstr);
          </script>
          別一種規(guī)換
              <script type="text/javascript">
                  
          var reg=new RegExp("終古","g");
                  
          var str="終古人民共和國(guó),終古人民";
                  
          var newstr=str.replace(reg,"中國(guó)"); 
                  
          var ostr=str.replace(/(人)/g,"<font color=red>$1</font>");
                  document.write(ostr);
                  alert(newstr);
              
          </script>

        3. posted on 2007-04-09 15:01 有貓相伴的日子 閱讀(425) 評(píng)論(0)  編輯  收藏 所屬分類: javascirpt
          <2007年4月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(32)

          隨筆分類(222)

          隨筆檔案(224)

          文章分類(4)

          文章檔案(7)

          相冊(cè)

          收藏夾(4)

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
          主站蜘蛛池模板: 宜春市| 新巴尔虎右旗| 孝义市| 水富县| 中卫市| 定日县| 卫辉市| 车险| 郧西县| 镇原县| 即墨市| 若尔盖县| 拜城县| 鄯善县| 井研县| 贞丰县| 灵寿县| 鄂尔多斯市| 孝感市| 罗山县| 界首市| 凤台县| 崇文区| 镇巴县| 浮梁县| 五原县| 新竹市| 荣昌县| 鄂托克前旗| 张家港市| 敖汉旗| 大田县| 新源县| 嘉禾县| 桃园县| 吴桥县| 项城市| 沙坪坝区| 万全县| 长岭县| 新野县|