读书人

设计正则表达式解决办法

发布时间: 2012-01-02 22:40:04 作者: rapoo

设计正则表达式
计算机系数学专业2002级姓名李明
如何设计自己的正则表达式:$dept$系$major$专业$grade$级\s姓名\s$name$
然后把匹配的内容: 计算机,数学 ,2002 ,李明 输出

[解决办法]
学习。
[解决办法]
String regEx = "^([\u4e00-\u9fa5]+)系([\u4e00-\u9fa5]+)专业(\\d{4})级\\s*姓名\\s*([\u4e00-\u9fa5]{2,4})$ "; //匹配一个以上汉字+系+一个以上汉字+专业+四个数字+级+任意空格+姓名+任意空格+二到四个汉字
String str = "计算机系数学专业2002级姓名李明 ";
if (str.matches(regEx))
System.out.println(str.replaceAll(regEx, "$1,$2,$3,$4 "));
else
System.out.println( "不匹配 ");
[解决办法]
这里不太适合用正则表达式吧

就算能够匹配, 也不表示是正确的字符串, 有可能逻辑错误...

应该把所有的专业, 班级, 姓名信息存储起来, 然后查询...

读书人网 >J2SE开发

热点推荐