javascriptRegex基礎篇

來源:互聯網
上載者:User

Regex:文法:/expression/,斜杠表示起始位置

建立方式:

1、var regObj = new RegExp("pattern",[,"flags"]);
pattern:必選項,Regex的字串;
flags:可選項,一些標誌組合。
2、var regObj = /pattern/[flags];該方式不能用引號將pattern和flags括起來。

正則表示對象RegExp對象的方法:

exec:檢索字元中是正則表示的匹配,返回找到的值,並確定其位置。
eg:
var str = "abcdefg";
var reg = /cd/;
var bol = reg.exec(str); //成功返回cd,失敗返回null;
test:檢索字串中指定的值,返回true或false。
eg:
var bol = reg.test(str); //成功返回true,失敗返回false;

string對象的方法:

match:找到一個或多個正則表示的匹配;
search:檢索與Regex相匹配的值;
replace:替換與Regex匹配的字串;
split:把字串分隔為字串數字;//結果為一個數組;

RegExp對象的屬性:

global:RegExp對象是否具有標誌g;//全域查詢,如果沒有這個屬性則在第一次匹配之後就結束操作;
ignorCase:RegExp對象是否具有標誌i;//忽略大小寫;
multiline:RegExp對象是否具有標誌m;//多行查詢;

Regex的常用符號:

/.../:代表一個模式的開始和結束;
^:匹配字串的開始;
$:匹配字串的結束;
s:任何空白字元;
S:任何非空白字元;
d:匹配一個數字字元,等級[^0-9];
D:除了數字之外的任何字元,等價於[^0-9];
w:匹配一個數字,底線或者字母字元,等價於[A-Za-z0-9];
W:任何非單字字元,等價於[^a-zA-Z0-9];
.:除了分行符號之外的任何字元;
{n}:匹配前一項n次;
{n,}:匹配前一項n次,或者多次;
{n,m}:匹配前一項至少n次,但是不能超過m次;
*:匹配前一項0次或者多次,等價於{0,};
+:匹配前一項1次或者多次,等價於{1,};
?:匹配前一項0次或者1次,等價於{0,1};
|:表示或者的意思;eg:[0-9]|[a-z];
():用於分組;

eg:

全是字母:
var reg = /^[a-zA-Z]+$/;至少有一個字母;
四個字母:
var reg = /^[a-zA-Z]{4}$/;加上'^'避免了"3dedf"這類的也匹配上去;
11位qq號,第一位不能為0:
/^[1-9]{1}d{10}$/
18位社會安全號碼:
/^d{17}(d{1}|[a-zA-Z}{1})$/
郵箱:
/^w{2,}@w{2,}(.[a-zA-Z]{2,4}){1,2}$/;這樣就可以匹配xx@yy.com.cn;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.