求一个正则表达式,要求:只能输入中文,英文数字空格下划线都行,首尾不能为空格,字符串中间可以为空格

求一个正则表达式,要求:只能输入中文,英文数字空格下划线都行,首尾不能为空格,字符串中间可以为空格。
在控件jquery.validationEngine.js验证的字符串,要排除键盘上特殊符号(!@#.~?等),只能输入中文,英文数字空格下划线都行,首尾不能为空格,字符串中间可以为空格。网上面找了很多相关验证,都不能满足要求,求各位大侠帮忙看看,小弟感谢不尽。像这条验证 /^\S[a-zA-Z0-9\s\u4e00-\u9fa5\_]*\S$/,最后带上*或者+后,特殊字符就不能排除了

var reg = /^[\w\u4e00-\u9fa5][\s\w\u4e00-\u9fa5]*(?!\s)$/;

追问

首部空格已经排除了,但是尾部空格好像没有排除,我再此基础上面修改下,就OK,还是要谢谢这位大侠,学习了。
var reg = /^[\w\u4e00-\u9fa5\-_][\s\w\u4e00-\u9fa5\-_]*[\w\u4e00-\u9fa5\-_]$/,

温馨提示:答案为网友推荐,仅供参考
相似回答