麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

正則表達式中特殊符號及正則表達式的幾種方法總結(replace,test,search)

2019-11-20 21:35:20
字體:
來源:轉載
供稿:網友

一 正則表達式的正文。
正則表達式中使用了特殊符號。下面我就將各種符號以及其意義和用法簡單的介紹一下(說明:"X以上包括X"):

/ 表示在其后的文字是特殊符號。例:"n"和"n"是一致的。"/n"和換行符是一致的。
^ 和輸入的開始一致。
$ 和輸入的結尾一致。
* 與此符號之前的文字0次以上相同的話,兩者一致。例:"zo*"和"zoo","z"都一致。
+ 與此符號之前的文字1次以上相同的話,兩者一致。例:"zo*"和"zoo"一致,但和"z"不一致。
? 與此符號之前的文字0次或1次相同的話,兩者一致。例:"a?ve?"和"never"的"ve"一致。
. 與除了換行符的所有單一文字一致。
(正則表達式) 以所指定的表達式尋找一致文字。如果找到了,儲存下來。一致的部分可以從
Match方法獲得的陣列中找到。
x|y x和y的任意一方相同都會被認為一致。例:"(z|f)ood"和"zood","food"都一致。
{n} n是0以上的整數。與其前的文字n次相同的話,兩者一致。例:"o{2}"和"Bob"中的"o"不一
致,與"foooood"中的前兩個"o"一致。
{n,} n是0以上的整數。與其之前的文字至少n次相同才一致。
{n,m} 兩者整數。n至m范圍的次數一致。
[xyz] 與中括號中的文字任意一個相同都被認為一致。
[^xyz] 與上面的相反。
[a-z] 文字的范圍,從"a"到"z"的文字都被認為一致。
[^a-z] 與上面的相反。
/b 表示單詞的末尾。例:"er/b"和"never"的"er"一致,但和"verb"的"er"不一致。
/B 表示非單詞的末尾。
/d 表示數字。
/D 表示非數字。
/s 表示空格。
/S 表示非空格。
/w 表示所有字母數字。
/W 表示非所有字母數字。

   i   (忽略大小寫)  
  g   (全文查找出現的所有   pattern)  
  gi   (全文查找、忽略大小寫)
/num num應該被賦予一個正數。與已經儲存的部分比較。例:"(.)/1"和任意的兩個連續的相同
文字一致。

二 如何定義一句正文:
方法一:直接寫
var s=/正則表達式/i或g或ig

方法二:建立對象實例:
var s=new RegExp(正則表達式,i或g或ig)


三 與正則表達式有關的方法:

1 exec方法
描述: 在制定的文字行內進行搜索。
結構: 正則表達式.exec(字符串)。
解說: 檢索的返回:
null 沒有檢索到;
一致的結果 檢索到后;
例:
代碼片段如下:
<script>
var s='AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPp'
var r=new RegExp('g','i');
var a=r.exec(s);
alert(a);
</script>

2 compile方法:
描述: 修改正則表現的內部形式。
結構: 正則表達.compile('正文','g或i或ig')。
解說: 沒什么好說的。
例:
代碼片段如下:
<script>
var s='AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPp'
var r=new RegExp('[A-Z]','g');
var a=s.match(r);
alert(a);
r.compile('[a-z]','g');
var a=s.match(r);
alert(a);
</script>


3 test方法:
描述: 顧名思義,做測驗。
結構: 正則表達.test(字符串)。
解說: 返回:
false 沒找到;
true 找到了;
例:
代碼片段如下:
<script>
var re=/re/g;
var msg='return';
var msg1='goon';
alert(re.test(msg));
alert(re.test(msg1));
</script>


4 replace方法:
描述: 尋找一致的并置換他。
結構: 字符串.replace(正則表達,替換字符串)。
解說: 與字符串不變化,返回其副本。
例:
代碼片段如下:
<script>
var s='AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPp'
var r=new RegExp('[A-Z]','g');
var a=s.replace(/[a-z]/g,'A');
alert(a);
</script>


5 match方法:
描述: 實行檢索。
結構: 字符串.match(正則表達)。
解說: 返回數列。
例:
代碼片段如下:
<script>
var re=/re/g;
var msg='rererere';
var msg1='goon';
alert(msg.match(re));
alert(msg1.match(re));
</script>


6 split方法:
描述: 分割字符串。
結構: 字符串.split(正則表達)。
解說: 返回數列。
例:
代碼片段如下:
<script>
var s="hello this good world";
var p=//s/g;
var a=s.split(p);
alert(a);
</script>


7 search方法:
描述: 返回一致的字符串的位置。(這比indexOf可用途廣多了!)
結構: 字符串.search(正則表達)。
解說: 返回
正整數 如果找到了
-1 如果沒找到
例:
代碼片段如下:
<script>
var s="hello this good world";
var p=/good/g;
var a=s.search(p);
alert(a);
</script>


把replace的方法的例子改一下:
代碼片段如下:
<script>
var s="hellOSCF";
var r=new RegExp("[A-Z]","g");
s=s.replace(r,"a");
alert(s)
</script>


最后是他的各種屬性

1 lastIndex屬性:
描述: 設定檢索開始的位置,可以得到其值
結構: 正則表達.lastIndex(=值).
解說:
當lastIndex大于檢索文字長度的時候,如果用test,exec方法執行的話,執行失敗,
lastIndex屬性被設定為0.
當lastIndex等于檢索文字長度的時候,如果表達式正文是空的話,一致.其他場合,
執行失敗,重設為0.
上記以外的情況,lastIndex會被設定為最后一致的文字列的位置指針.

2 source屬性
描述: 返回正則表達的正文
結構: 正則表達.source
例:
代碼片段如下:
<script>
var s=/[a-z]{3}/W/s/g;
var s1=new RegExp("[a-z]{3}/W","g");
alert(s.source);
alert(s1.source);
</script>

下面我將幾個處理字符函數寫出來:

1 嚴禁數字
代碼片段如下:
function check(msg){
var exe=//d/g;
if(exe.test(msg))return(0);
else return(1)
}

2 只準字母
代碼片段如下:
function check(msg){
var exe=//W/g;
if(exe.test(msg))return(0);
else return(1);
}


3 嚴禁代碼
代碼片段如下:
function check(msg){
var exe=/<(/w|/W)*>/g;
if(exe.test(msg))return(0);
else return(1);

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 亚洲aⅴ免费在线观看 | 成人福利视频 | 成人毛片视频在线播放 | av免费片| 黄色毛片视频在线观看 | 国产亚洲精品综合一区91555 | 精品国产一区二区三区蜜殿 | 日韩视频在线观看免费 | 九色com | 在线a毛片免费视频观看 | 免费成人 | 欧美一级做性受免费大片免费 | 9191色| 国人精品视频在线观看 | 国产一区视频观看 | 久久精品久久久久 | 双性精h调教灌尿打屁股的文案 | 久久久久久久久久久久99 | 叉逼视频 | 久久网一区二区 | 亚洲一级成人 | 性爱免费在线视频 | 媚药按摩痉挛w中文字幕 | 成人福利视频在线观看 | 成人国产精品一区 | 九九热精品在线视频 | 国产亚洲美女精品久久久2020 | 色视频在线播放 | 国产成人在线综合 | 欧美a v在线 | 国内精品久久久久影院不卡 | 成人在线97| 精品国产一区二区久久 | 爱高潮www亚洲精品 国产精品一区自拍 | 99欧美视频| av影院在线播放 | 国产亚洲精品成人 | 欧美精品电影一区 | 羞羞视频免费网站含羞草 | 97青青草视频 | 男男羞羞视频网站国产 |