如题所述
1ï¼æ£å表达å¼æ¦å¿µä»ç»ï¼å 容æ¥èªç¾åº¦ç¾ç§ï¼ï¼æ£å表达å¼ï¼å称è§å表达å¼ï¼è±æå为Regular Expressionï¼å¨ä»£ç ä¸å¸¸ç®å为regexãregexpæREï¼æ¯è®¡ç®æºç§å¦çä¸ä¸ªæ¦å¿µã
æ£å表é常被ç¨æ¥æ£ç´¢ãæ¿æ¢é£äºç¬¦åæ个模å¼(è§å)çææ¬ãæ£å表达å¼æ¯å¯¹å符串ï¼å æ¬æ®éå符ï¼ä¾å¦ï¼a å° z ä¹é´çåæ¯ï¼åç¹æ®å符ï¼ç§°ä¸ºâå å符âï¼ï¼æä½çä¸ç§é»è¾å ¬å¼ï¼å°±æ¯ç¨äºå å®ä¹å¥½çä¸äºç¹å®å符ãåè¿äºç¹å®å符çç»åï¼ç»æä¸ä¸ªâè§åå符串âï¼è¿ä¸ªâè§åå符串âç¨æ¥è¡¨è¾¾å¯¹å符串çä¸ç§è¿æ»¤é»è¾ãæ£å表达å¼æ¯ä¸ç§ææ¬æ¨¡å¼ï¼æ¨¡å¼æè¿°å¨æç´¢ææ¬æ¶è¦å¹é çä¸ä¸ªæå¤ä¸ªå符串ã
2ï¼æ£æµå符串æ¯å¦ç±æ°åç»æï¼åéç¨è¯¥è¡¨è¾¾å¼ï¼
public static void main(String[] args) {// è¦éªè¯çå符串
String str = "service@xsoftlab.net";
// æ¯å¦æ°åæ£å表达å¼
String regEx = "^[0-9]*$";
// ç¼è¯æ£å表达å¼
Pattern pattern = Pattern.compile(regEx);
// 忽ç¥å¤§å°åçåæ³
Matcher matcher = pattern.matcher(str);
// å符串æ¯å¦ä¸æ£å表达å¼ç¸å¹é
boolean rs = matcher.matches();
// å¦æ为æ°åï¼åè¾åºtrueï¼åä¹falseï¼å³å¯ç¨è¯¥åéåæ¡ä»¶å¤æ
System.out.println(rs);
}
public class ReUse {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);//定义输入对象
String input="";
boolean right=false;
do{
input=sc.nextLine();//输入一个字符串
right=input.matches("^\\d+-+\\d+$");//正则表达式
if(!right)//不符合
System.out.print("输入有错,请重输: ");
}while(!right);
}
}
给楼主写了个小程序。。。
楼主运行测试一下吧
反正我已经测试运行过了。。
还没有挑出毛病。。
祝楼主早日成功哈!!!