繁体   English   中英

检查一个字符串是以一个字母开头,后跟数字,然后是任何字符

[英]Check if a string starts with one letter followed by digit(s) and then any characters

如何在以下方案中使下面的模式返回true

m1m1aM100bcs45S396xyz

在这样的场景中是假的:

'' m11ammMxmm1SS1b

要调整的模式:/ /^m\\S\\.*/i.test(text)

现在它在开头有任意数量的字母,在第一个字母后面有非数字

你可以用

/^[a-z]\d.*/i

请参阅正则表达式演示 如果字符串可以有换行符,请将.*替换为[\\s\\S]*

细节

  • ^ - 字符串的开头
  • [az] - 一个ASCII字母
  • \\d - 一个数字
  • .* - 除了换行符之外的任何0+字符( [\\s\\S]将匹配任何字符)。

注意 :如果需要使用匹配值,最后的.* (或[\\s\\S]* )只是个好主意。 如果没有,当与RegExp#test() ,您可以省略该模式的那一部分。

你只能测试前两个字符。

 var cases = ['m1', 'm1a', 'M100bc', 's45', 'S396xyz', '', 'm', '1', '1a', 'mm', 'Mx', 'mm1', 'SS1']; console.log(cases.map(s => (/^[az]\\d/i.test(s)))); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM