亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

javascript 使用 new RegExp 創建正則表達式?

javascript 使用 new RegExp 創建正則表達式?

慕的地6264312 2019-02-14 15:11:11
下面是設置用戶代碼為字母數字組合,并且4~6位,測試正確的是:var re = new RegExp(/^[a-zA-Z0-9]{4,6}$/);為什么下面幾種是錯誤的?var reg = new RegExp("/^[a-zA-Z]\w+@\w+\.com$/");var reg = new RegExp("^[a-zA-Z]\w+@\w+\.com$");var reg = new RegExp("[a-zA-Z]\w+@\w+\.com");使用new RegExg的語法不是:re = new RegExp("pattern",["flags"]) 嗎?這個是從幫助手冊上看到到為什么這幾個加分號就不正確,而不加分號才是正確的?
查看完整描述

4 回答

?
慕斯王

TA貢獻1864條經驗 獲得超2個贊

new RegExp的時候\w \.這樣的要用兩個反斜杠,即\\w, \\.

因為字符串里反斜杠是轉義字符,\w會變成w。

"^[a-zA-Z]\w+@\w+\.com$" == "^[a-zA-Z]w+@w+.com$"

查看完整回答
反對 回復 2019-03-26
?
慕哥6287543

TA貢獻1831條經驗 獲得超10個贊

問題不在分號,在引號,Js做正則的時候,正斜線是用來表達正則了,不需要額外加引號,否則會被誤識別的吧
后兩句沒有斜線,是不會識別為pattern的

查看完整回答
反對 回復 2019-03-26
?
斯蒂芬大帝

TA貢獻1827條經驗 獲得超8個贊

1234var re=new RegExp("abc","g");//用構造函數創建,匹配模式放在“”內就行了var re=/abc/g;     //字面量創建就是這樣的   準確來說,你測試正確的也是錯誤的寫法


查看完整回答
反對 回復 2019-03-26
  • 4 回答
  • 0 關注
  • 2218 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號