Re: [問題] 為什麼這樣寫不會通過

看板Ajax作者 (沉默是金。)時間15年前 (2010/03/03 13:51), 編輯推噓0(003)
留言3則, 2人參與, 最新討論串2/3 (看更多)
※ 引述《knives ()》之銘言: : ※ [本文轉錄自 RegExp 看板] : 作者: knives () 看板: RegExp : 標題: [問題] 為什麼這樣寫不會通過 : 時間: Wed Mar 3 13:41:49 2010 : 我想要過濾輸入 有 (PM),其中PM是不分大小寫的 : 我用這個 ([\w(]pm|PM|Pm|pM[\w)]) : 在這個站http://blog.roodo.com/rocksaying/archives/2670695.html 下方的測試表單 : 可以檢查出來 : 但是我拿到java script下面這樣寫 : var re = new RegExp('/([\w(]pm|PM|Pm|pM[\w)])/','g'); ^ ^ 這兩個是多的 也可以用另一種regex的寫法 var re=/([\w(]pm|PM|Pm|pM[\w)])/g ; : alert(userName.replace(re,"test")); : 其中的userName是個輸入框裡面的值 : 我測試的目標如果出現(PM)的字樣,就取代成test : 但是這樣寫,還是會alert出有(pm)的字樣用 : 請問該怎麼改才行 另外你要取代的是 (PM) 還是 PM , 你的寫法會是後者喔 也就是 var re = new RegExp('([\w(]pm|PM|Pm|pM[\w)])','g'); alert("123(PM)asdasd".replace(re,"test")); 結果會是 123(test)asdasd 另外你怎麼不直接這樣下就好了 ([\w(][pP][Mm][\w)]) 甚至是 var re=/([\w(]pm[\w)])/gi ; //i=ignore case -- I am a person, and I am always thinking . Thinking in love , Thinking in life , Thinking in why , Thinking in worth. I can't believe any of what , I am just thinking then thinking , but worst of all , most of mine is thinking not actioning... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 74.207.224.18

03/03 13:53, , 1F
感謝,我要取代連同括號的部份,是要怎麼改
03/03 13:53, 1F

03/03 13:54, , 2F
var re=/[\w(][pP][Mm][\w)]/g ;
03/03 13:54, 2F

03/03 13:55, , 3F
或 var re=/[\w(]pm[\w)]/gi ;
03/03 13:55, 3F
文章代碼(AID): #1BZVZeKH (Ajax)
討論串 (同標題文章)
文章代碼(AID): #1BZVZeKH (Ajax)