0

我让用户输入格式为

图像[1-4 位][0-1 字母]

例如:(有效名称)

image1
image1f
image1B
image2201
image2201a

无效

image (no number specified)
imagez (no number specified)
image12a1 (no digit permitted after letter)
image44aa (only one letter allowed after number)

如何检查是否输入了正确的格式?

4

3 回答 3

3

不知道你是否想要 php 或 javascript。这是JS版本:

/^image(\d{1,4})([A-Za-z])?$/

要提取数字:

var result = regex.exec(tests[i]),
    isValid = result !== null,
    number = isValid && result[1],
    lastChar = isValid && result[2];

查看更新的示例:http: //jsfiddle.net/Ug7XD/2/

于 2013-01-22T11:42:54.910 回答
1

这应该可以帮助你...

/^image[0-9]{1,4}[a-zA-Z]{0,1}$/

这里解释一下。 ^表示字符串的开头,image也就是字符串,[0-9]用于标识0到9的数字,{1,4}表示数字必须是1或4次,然后[a-zA-Z]检查字符,并{0,1}检查数字后是否有1个字符或没有,$表示您在变量中提供的字符串的结尾。/用于转义正则表达式字符串。

于 2013-01-22T11:48:56.620 回答
0

尝试

$pattern = "/^image\d{1,4}[A-Za-z]$/";
于 2013-01-22T11:42:39.013 回答