Java 正则表达式简介

来源:互联网 发布:福建弘扬软件好不好 编辑:程序博客网 时间:2024/06/07 23:27
package regex.demo;
/*
 * 正则表达式
 * 
 * 正则表达式用于操作字符串数据
 * 通过一些特定的符号来体系
 * 所以我们为了掌握正则表达式 必须要学习一些符号。
 * 
 *虽然简化了 但是阅读性变差了
 *X?一次或一次也没有
 *X* 0次或多次
 *X+ 一次或多次
 *X[n] 正好n次
 *X[n,] 至少n次
 *X[n,m] n-m次
 *
 *
 */
//   ^ 行的开头 
//   $ 行的结尾 
//  \b 单词边界 
//  \B 非单词边界 
//  \A 输入的开头 
//  \G 上一个匹配的结尾 
//  \Z 输入的结尾,仅用于最后的结束符(如果有的话) 
//  \z 输入的结尾 
//


public class RegexDemo {


public static void main(String[] args) {
String qq="4 567";
//checkQQ(qq);
/* String regex= "[1-9][0-9]{4,14}";//正则表达式
boolean b=qq.matches(regex);
System.out.println(qq+":"+b);
*/
String str="aoob";
String reg="ao+b";

boolean b=str.matches(reg);
System.out.println(str+":"+b);
}
/*
* 需求:定义一个功能对QQ号进行校验
* 要求:长度5-15 只能是数字 0不能开头

*/
public static void checkQQ(String qq) {
int len=qq.length();

if(len>=5&&len<=15) {
if(!qq.startsWith("0")) {
try {
long l=Long.parseLong(qq);
System.out.println(l+"正确");
}catch (NumberFormatException e) {
System.out.println(qq+":含有非法字符");
}
}else {
System.out.println(qq+":不能以0开头");
}

}else {
System.out.println(qq+":长度错误");
}
}


}