牛骨文教育服务平台(让学习变的简单)
博文笔记

正则表达式匹配,替换,查找,切割的方法

创建时间:2016-09-18 投稿人: 浏览次数:1406

正则表达式的查找;主要是用到String类中的split():

String str;

str.split();方法中传入按照什么规则截取,返回一个String数组

常见的截取规则:

str.split("\.")按照.来截取

str.split(" ")按照空格截取

str.split("cc+")按照c字符来截取,2个c或以上

str.split((1)\.+)按照字符串中含有2个字符或以上的地方截取(1)表示分组为1

截取的例子:

按照分组截取;截取的位置在两个或两个以上的地方

?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 String str = "publicstaticccvoidddmain";    //对表达式进分组重用    String ragex1="(.)\1+";    String[] ss = str.split(ragex1);    for(String st:ss){    System.out.println(st);    } //按照两个cc+来截取 String ragex = " ";   //切割    String strs = "publicstaticccvoidddmain";   String ragexs = "cc+";   String[] s = strs.split(ragexs);   for(String SSSS :s){   System.out.println(SSSS);   }   System.out.println("=-=========");

正则表达式中的替换:

语法定义规则:

?
1 String s =str.replaceAll(ragex, newstr);

字符串中的替换是replace();

将4个或4个以上的连续的数字替换成*

?
1 2 3 4 5 6 // 替换    String str="wei232123jin234";    String ragex = "\d{4,}";    String newstr = "*";    String s =str.replaceAll(ragex, newstr);    System.out.println(s);

将重复的字符串换成一个*

?
1 2 3 4 5 String str ="wwweiei222222jjjiiinnn1232";    String ragex ="(.)\1+";    String newStr ="*";    String s = str.replaceAll(ragex, newStr);    System.out.println(s);

将 我...我...要..要.吃...吃...饭 换成 我要吃饭

?
1 2 3 4 5 6 7 8 9 10 11 12 String str = "我...我...要..要.吃...吃...饭"
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。