正则表达式只允许字母,空格和 - 只有
我正在寻找正则表达式只允许(alphabet
,space
& -
)。正则表达式只允许字母,空格和 - 只有
以下尝试,但在该案的一个
1失败)不允许空间 - :^[a-zA-Z]+$
2)不允许单个字符:^\S+[a-zA-Z -]+$
使用此。
var regex = new RegExp("^[a-zA-Z -]*$");
最初接受空间。我不想要 –
var regex = new RegExp(“^ [a-zA-Z - ] * $”);试试这个 –
试试这个正则表达式:
^[a-zA-Z\s-]+$
最初接受的空间。我不想 –
试试下面的代码只alphabets
和-
被允许。空间也是第一次不允许的。这里是Demo 如果你想alphabets
,-
,space
使用这个。 var regex = new RegExp("^[a-zA-Z \b-]+$");
$('.onlyalphabets').on('keypress', function (e) {
if ($(this).val() == "") {
if (event.which === 32)
{ return false; }
else {
var regex = new RegExp("^[a-zA-Z\b-]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault();
return false;
}
}
}
else {
var regex = new RegExp("^[a-zA-Z\b-]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if (!regex.test(key)) {
event.preventDefault();
return false;
}
}
return true;
});
最初接受空间。这是我不想要的。 –
尝试新的RegExp(“^ [a-zA-Z \ b - ] + $”) –
@PUSHPENDRA SINGH现在检查 –
如果你只是不想让在开始的空间,并允许它和其他字符您允许后,并能够匹配1字符的字符串,使用
^[a-zA-Z-][a-zA-Z -]*$
的^
匹配串的开始位置,只[a-zA-Z-]
匹配字母或-
作为第一炭和[a-zA-Z -]*
匹配0+从允许的字符设置为$
结束字符串。
如果要允许单词用空格/连字符分隔,请使用^[A-Za-z]+(?:[ -][A-Za-z]+)*$
。
另外一个人也试过^ [a-zA-Z-''] + $,但最初接受的空间也是这样,我不想要。 –
[空格字母的正则表达式]的可能重复(http://stackoverflow.com/questions/9289451/regular-expression-for-alphabets-with-spaces) –
试试这个'var regex =/^ [a-zA -Z - ] + $ /;' –