正则表达式匹配1或2个字母,后跟1或2位数

时间:2012-05-31 19:16:01

标签: regex

我需要帮助形成一个正则表达式来检查输入字符串是否只是模式1或2个字母(可以是小写或大写),后跟1或2位数。有效字符串将是d1,d15,ha1,ha20等。

1 个答案:

答案 0 :(得分:5)

以下应该做你想做的事:

\A[a-zA-Z]{1,2}\d{1,2}\z

[a-zA-Z]是一个匹配任何字母的字符类,\d相当于[0-9]并匹配任何数字,{1,2}表示“重复前一个元素1或2次”。

\A\z是锚,它们只分别匹配字符串的开头和结尾(它们不匹配任何字符,它们只需要字符串开始或结束它们允许比赛)。

你也常常会看到主播^$,我使用\A\z,因为$会在最后一行换行之前匹配字符串,可以通过选项修改其行为,而\z始终表示字符串的结尾。

以下页面提供了正则表达式语法的精彩摘要:
http://www.regular-expressions.info/reference.html