繁体   English   中英

正则表达式,用于验证数字和字符

[英]Regex for validating numbers and characters

我需要验证包含一个数字(该数字不能为0或开头不能为零)或一个数字后跟az或AZ范围内的单个字符的字符串。 所以这些都是有效的

2, 12, 1, 324534A, 2Y, 934d

但是这些都是无效的

000R, 0, 0D, D3, 23432dddd, 234Q343.

有人可以为此显示正确的正则表达式吗?

这应该匹配。

^[1-9]\d*[a-zA-Z]?$

分解:

^           - Match start of string
[1-9]       - Followed by one digit (1-9), no 0
\d*         - Followed by any number of digits (can contain digits from 
              other cultures). If you want to constain use [0-9] instead of \d
[a-zA-Z]?   - Followed by either one character or none
$           - Followed by end of string

^[1-9]\\d*[a-zA-Z]?$应该这样做。

  • [1-9] -一位数字1-9
  • \\d* -可能是0-9的几位数字
  • [a-zA-Z]? -可选的大写/小写字符(可能不包括重音符号等)
  • ^...$ -仅匹配整个字符串,不匹配子字符串。

暂无
暂无

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

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