正则表达式检查某些字符和数字模式

时间:2013-01-22 11:39:29

标签: php jquery regex

我让用户以

的格式输入文件

图像[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)

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

3 个答案:

答案 0 :(得分: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/

答案 1 :(得分: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个字符,否则$表示您在变量中提供的字符串的结尾。 /用于转义正则表达式字符串。

答案 2 :(得分:0)

尝试

$pattern = "/^image\d{1,4}[A-Za-z]$/";