您的位置:首页 > 其它

正则表达式

2016-06-25 13:49 232 查看
正则表达式(Regular Expression)

正则表达式使用单个字符串来描述,匹配一系列符合某个句法规则的字符串

正则表达式通常被用来检索,替换那些符合某个模式的文本

java,util.regex 包中提供以下两个类对正则表达式的支持:

Matcher类

通过解释Pattern对 charactor sequence执行匹配操作的引擎。

Prttern类 模式

正则表达式的编译表示形式

Matcher类

public final class Matcher extends ObjectImplements MatchResult

Matcher()类的主要功能是用于进行正则的匹配,通过pattern类中定义完的正则,在使用Matther类

进行验证或者替换。

常用的方法:

boolean matches()

尝试将整个区域与模式匹配

String ReplaceAll(String replacement)

替换模式与给定替换字符串相匹配的输入序列的每个子序列

String replaceFirst(String replacement);

替换模式与给定替换字符串匹配的输入序列的第一个子序列

Prttern类

public final class Pattern extends ObjectionImplements Serializable

正则表达式的编译表示形式,指定为字符串的正则表达式必须首先被编译为此类的实例

经典的调用顺序

Pattern p=Pattern.compile(“a*b”);

Matcher m=p.matcher(“aaaab”);

boolean b=m.matches();

public class Zhengze {

public static void main(String[] args) {
String s="0123456709";
boolean flag=true;

//第一种判断是不是有数字组成
char[] charArray = s.toCharArray();
for(char a:charArray){
if(a<'0' || a>'9'){
flag=false;
}
}
if(flag){
System.out.println("是由数字组成");
}else{
System.out.println("不是由数字组成");
}

//第二种,使用正则表达式
flag = s.matches("\\d+");
if(flag){
System.out.println("是由数字组成");
}else{
System.out.println("不是由数字组成");
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: