js正则表达式的写法

对用户输入的字段进行校验,输入的字符只能有0-9 a-z A-Z ( ) - _ 和中文字符,用正则表达式怎么写呢?请各位大侠帮助!

你使用的表达式没问题,可能是allString 有问题。可能不是文本值。你检查下。
Validation.prototype.isValidateChar = function(String,prInfo){
if(String == '' || String == null){
return false;
}
var patrn = /^[\u4E00-\u9FA50-9A-Za-z()-_]+$/;
alert(allString); //打印看是否是文本值
if(!patrn.test(allString)){
this.errors[this.errors.length] = promptInfo;
}
}

var patrn=/^[A-Za-z0-9()_-]+$/;
if(patrn.test(val))
return true;
else
return false;

var patrn=/^([A-Za-z0-9()_-]+[\u4e00-\u9fa5]*[A-Za-z0-9()_-]+)|([\u4e00-\u9fa5]+[A-Za-z0-9()_-]*)$/;
if(patrn.test(value))
return true;
else
return false;

/^[\u4E00-\u9FA50-9a-zA-Z()-_]+$/

中文部分 \u4E00-\u9FA5

[quote]var patrn=/^[A-Za-z0-9()_-\u4e00-\u9fa5]+$/;
if(patrn.test(val))
return true;
else
return false;[/quote]
使用上面的那个看看

[quote]
[quote]引用
var patrn=/^[A-Za-z0-9()_-\u4e00-\u9fa5]+$/;
if(patrn.test(val))
return true;
else
return false;[/quote]

使用上面的那个看看[/quote]

好象 - 这个应该写成 - 。

工程的缓存都清了吗? 修改JS要重启浏览器。

再alert();进行看看到底怎么回事。

/[\u4e00-\u9fa5\w)(-]/

\w直接包含a-zA-Z0-9_