在下面的正则表达式中为什么我们使用$ symbol?这是什么意思? 谁有人解释一下?我一直在寻找这个吗?
function AllowAlphabet(){
if (!frm.alphabet.value.match(/[a-zA-Z]+$/) && frm.alphabet.value !="")
{
frm.alphabet.value="";
alert("Please Enter only alphabets");
}
if(frm.alphabet.value.length > 5)
alert("max length exceeded");
答案 0 :(得分:3)
美元符号表示正则表达式中的一行结束。
在这种情况下它的作用是确保正则表达式检查frm.alphabet.value
是否包含a-z或A-Z,紧接着是行结尾。如果你删除了美元字符,“abc1337”将是有效输入,虽然即使是美元字符,一开始没有插入符号,“1337abc”将是有效输入。
答案 1 :(得分:2)
$
将表达式绑定到字符串的末尾(也称为anchor)。匹配的字符串必须以大写或小写字母结尾。
虽然,FWIW,该表达式也应该使用字符串锚点(^
)f的开头,但是他们想要确保它只是字符串中的字母。 (没有它,5abc
的值将通过该正则表达式。)
var foo = '5abc';
if (foo.match(/[a-zA-Z]$/)) {
// this block is executed despite the 5 being there.
console.log('match');
}
答案 2 :(得分:0)
实际上它不是jQuery
Regex
(在您的情况下)
$
- 如果美元符号($)位于整个正则表达式的末尾,它匹配行的结尾。
选中此regexplained,以便您轻松了解regex
答案 3 :(得分:0)
^
和$
分别代表正则表达式中一行的开头和结尾