Utk*_*maz 0 javascript regex replace
我做错了还是JS替换有问题?
<input type="text" id="a" value="(55) 55-55-55" />?
document.write($("#a").val().replace(/()-/g,''));?
prints (55) 555555
Run Code Online (Sandbox Code Playgroud)
我怎么能替换()和空格呢?
在JavaScript正则表达式中,(和)字符具有特殊含义.如果你想按字面意思列出它们,请\在它们前面放一个反斜杠().
如果你的目标是摆脱所有的(,),-,和空格字符,你可以用一个字符类与交替(例如,二选一)联合做\s,它的全称是"白色小号步伐":
document.write($("#a").val().replace(/[()\-]|\s/g,''));?
Run Code Online (Sandbox Code Playgroud)
(我没有在前面添加反斜杠,()因为你不需要在一个字符类中.我确实把一个放在了前面,-因为在一个字符类中,-有特殊意义.)
或者,如果你想摆脱任何不是数字的东西,你可以使用\D:
document.write($("#a").val().replace(/\D/g,''));?
Run Code Online (Sandbox Code Playgroud)
\D意思是"不是数字"(注意它是一个大写\d字母,小写字母是相反的[任何数字]).
| 归档时间: |
|
| 查看次数: |
181 次 |
| 最近记录: |