我有一个正则表达式,允许字符串为空.如果它不为空,则字符串可能只包含字母和空格.但它可能无法以空格开始或结束.
这个RegExp应该做这个工作:
^(?! )[a-zA-Z]*[a-zA-Z ]*$
我在这里测试过:http://tools.netshiftmedia.com/regexlibrary/
但是当我在我的js中实现它时,它不允许字符串为空.
这是代码
function validatePreposition(name) {
string = string = document.forms['form'][name].value;
pattern = new RegExp('^(?! )[a-zA-Z]*[a-zA-Z ]*$');
checkString(name, pattern, string);
}
function checkString(name, pattern, string) {
if(!pattern.test(string)) {
error[name] = 1;
} else {
error[name] = 0;
}
printErrors();
}
Run Code Online (Sandbox Code Playgroud)
如何更改我的代码以便允许空字符串?
Mar*_*cus 14
请尝试使用此代码:
pattern = /(^[a-zA-Z]+(\s*[a-zA-Z]+)*$)|(^$)/;
Run Code Online (Sandbox Code Playgroud)
它将测试空字符串或测试以aZ开头的字符串,并且可能在字符串中具有无限量的空格但必须以aZ结尾.
你可以在这里看到它:http://jsfiddle.net/BAXya/
| 归档时间: |
|
| 查看次数: |
3553 次 |
| 最近记录: |