JSRegex擷取分組內容的方法

來源:互聯網
上載者:User

剛才寫的居然丟掉了,鬱悶,重新謝了。
支援多次匹配的方式:
js 代碼
1. var testStr = "now test001 test002";   
2. var re = /test(\d+)/ig;    
3. var r = "";   
4. while(r = re.exec(testStr)) {   
5.     alert(r[0] + "  " + r[1]);   
6. } 
此外也可以用testStr.match(re),但是這樣的話就不能有g的選項,而且只能得到第一個匹配。
另外備忘一下:
Regex對象的屬性及方法:
  預定義的Regex擁有有以下靜態屬性:input, multiline, lastMatch, lastParen, leftContext,
rightContext和$1到$9。其中input和multiline可以預設定。其他屬性的值在執行過exec或test方法後被根據
不同條件賦以不同的值。許多屬性同時擁有長和短(perl風格)的兩個名字,並且,這兩個名字指向同一個值。(JavaScript類比perl的Regex)
Regex對象的屬性:
屬性 含義
$1...$9 如果它(們)存在,是匹配到的子串 
$_ 參見input 
$* 參見multiline 
$& 參見lastMatch 
$+ 參見lastParen 
$` 參見leftContext 
$''          參見rightContext 
constructor     建立一個對象的一個特殊的函數原型 
global        是否在整個串中匹配(bool型) 
ignoreCase     匹配時是否忽略大小寫(bool型) 
input        被匹配的串 
lastIndex      最後一次匹配的索引 
lastParen      最後一個括弧括起來的子串 
leftContext     最近一次匹配以左的子串 
multiline      是否進行多行匹配(bool型) 
prototype      允許附加屬性給對象 
rightContext    最近一次匹配以右的子串 
source        Regex模式 
lastIndex      最後一次匹配的索引
Regex對象的方法:
方法 含義
compile       這個應該是指重新定義Regex的內容
exec       執行尋找,可以利用while的方式多次尋找
test        進行匹配 www.2cto.com  
toSource      返回特定對象的定義(literal representing),其值可用來建立一個新的對象。重載Object.toSource方法得到的。 
toString      返回特定對象的串。重載Object.toString方法得到的。 
valueOf       返回特定對象的原始值。重載Object.valueOf方法得到
 
例子:
<script language="JavaScript">
var myReg = /(w+)s(w+)/;
var str  = "John Smith";
var newstr = str.replace(myReg, "$2, $1");
document.write(newstr);
</script>
將輸出"Smith, John"

 

摘自  紙頭折飛機
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.