在Java中使用一个字母和一个数字为字符串定义正则表达式

时间:2013-12-06 01:33:27

标签: java regex

我需要验证字符串是否包含一个字母作为第一个字符,一个数字作为第二个字符。因此字符串应如下所示:D8Z6,...

我尝试使用以下正则表达式:

^[A-Za-z][1-8]$

但它似乎没有起作用。谁能看到我出错的地方?

非常感谢。

1 个答案:

答案 0 :(得分:2)

似乎为我工作?

System.out.println("D6".matches("^[a-zA-Z][1-8]$")); // True
System.out.println("D8".matches("^[a-zA-Z][1-8]$")); // True
System.out.println("D9".matches("^[a-zA-Z][1-8]$")); // False

可能存在的问题是你有额外的空格..

System.out.println(" D8 ".trim().matches("^[a-zA-Z][1-8]$")); // True