作者TonyQ (沉默是金。)
看板Ajax
标题Re: [问题] 为什麽这样写不会通过
时间Wed Mar 3 13:51:34 2010
※ 引述《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)])/g
i ; //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
1F:→ knives:感谢,我要取代连同括号的部份,是要怎麽改 03/03 13:53
2F:→ TonyQ:var re=/[\w(][pP][Mm][\w)]/g ; 03/03 13:54
3F:→ TonyQ:或 var re=/[\w(]pm[\w)]/gi ; 03/03 13:55