我正在使用输入字段,我希望用户的第一个字母是大写的。在此之前,我需要一个允许用户输入我使用的唯一大写字母的模式
pattern="[A-Z ]*"
是否有任何模式可以检查用户的第一个字母是否为大写字母。我想要的结果是:
testing => is wrong
Testing => is good.
Testing Done =>is good also.
我正在使用输入字段,我希望用户的第一个字母是大写的。在此之前,我需要一个允许用户输入我使用的唯一大写字母的模式
pattern="[A-Z ]*"
是否有任何模式可以检查用户的第一个字母是否为大写字母。我想要的结果是:
testing => is wrong
Testing => is good.
Testing Done =>is good also.
可以使用/^[A-Z].*$/。
^[A-Z]它要求字符串应以大写字母开头。
.*$现在将匹配除新行之外的任何内容。
let regex = /^[A-Z].*$/
let str1 = 'testing'
let str2 = 'Testing'
let str3 = 'Testing Done'
console.log(regex.test(str1))
console.log(regex.test(str2))
console.log(regex.test(str3))
如果您不想在单词之间使用大写字母,则可以尝试:
/^([A-Z][a-z]*((\s[A-Za-z])?[a-z]*)*)$/
let regex = /^([A-Z][a-z]*((\s[A-Za-z])?[a-z]*)*)$/
let str1 = 'testing'
let str2 = 'Testing'
let str3 = 'Testing Done'
let str4 = 'TesTing';
let str5 = 'Testing Done Done Done done';
console.log(regex.test(str1))
console.log(regex.test(str2))
console.log(regex.test(str3))
console.log(regex.test(str4))
console.log(regex.test(str5))
注意:要使用角度模式,您需要转义反斜杠。所以你的模式将是这样的:
Validators.pattern('^([A-Z][a-z]*((\\s[A-Za-z])?[a-z]*)*)$')
在此处查看示例:https ://stackblitz.com/edit/angular-3s3cdc?file=src%2Fapp%2Fapp.component.html
regexp = /^[A-Z]/
您可以使用上面的代码来验证您的字符串。