以下代码仅允许使用字母数字和空格。但是,我还想允许带重音的字符(Ã)。如何修改正则表达式?
由于
<html>
<head>
<script type='text/javascript' src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/JavaScript">
$(function() {
$("#sub").bind("click",
function() {
$('#addText').val($('#addText').val().replace(new RegExp("[^a-zA-Z0-9 ]","g"), ''));
});
});
</script>
</head><body>
<div>Enter Text:</div>
<input id="addText" type=text/>
<input id="sub" type="button" value="Submit" />
</body></html>
答案 0 :(得分:2)
如果您只关心Latin-1(西欧)字母,这应该有效:
[A-Za-z\xc0-\xd6\xd8-\xf6\xf8-\xff]
对于其他脚本(例如:希腊语,西里尔语,泰语字母,CJK字符等),事情变得复杂得多,并且禁止像控制字符这样的事情变得更安全,而不是试图跟踪哪些字符是“字母”。
答案 1 :(得分:0)
如果您只想添加这一个字符..只需将其添加到正则表达式
中[^a-zA-Z0-9Ã ]
请记住,虽然可能会出现如下所述的并发症,但请遵循Laurence Gonsalves的建议