黑马程序员技术交流社区

标题: java正则表达式问题 [打印本页]

作者: 范德农    时间: 2012-12-25 13:32
标题: java正则表达式问题
1. X 123456 - Y   (第一个必须是A到Z,后面六位是数字,第八位必须是"-",最后一位必须是0到9或者大写A)2. XX 123456 - Y(基本同上,就是前两位必须是A到Z)X - can be A-ZY - 0-9, A请问用正则表达式怎么写,在Java后台用
作者: 黄锦成    时间: 2012-12-25 13:42
本帖最后由 黄锦成 于 2012-12-25 13:46 编辑

/*
1、X 123456 - Y   (第一个必须是A到Z,后面六位是数字,第八位必须是"-",最后一位必须是0到9或者大写A)
2、XX 123456 - Y(基本同上,就是前两位必须是A到Z),X - can be A-ZY - 0-9, A请问用正则表达式怎么写
*/
public class Test{
        public static void main(String args[]){
                //第1题
                String str = "X123456-Y";
                System.out.println(str.matches("[A-Z]\\d{6}-[A-Z]"));               

                //第2题,这题后面的条件X - can be A-ZY - 0-9有点不明白
                String str1 = "-4123456-Y";
                System.out.println(str1.matches("[A-Z][A-Z]\\d{6}-[A-Z]"));                        
        }
        
}   




作者: 冯祖焱    时间: 2012-12-25 17:45
^[A-Z]{1,2}\d{6}-[\dA]$
这么写
作者: 清水    时间: 2012-12-26 17:10

1. X 123456 - Y   (第一个必须是A到Z,后面六位是数字,第八位必须是"-",最后一位必须是0到9或者大写A)2. XX 123456 - Y(基本同上,就是前两位必须是A到Z)X - can be A-ZY - 0-9, A请问用正则表达式怎么写,在Java后台用

^[A-Z]\\d{6}-[0-9A]$
^[A-Z]{2}\\d{6}-[0-9A]$




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2