到底用四种功能中的哪一个呢?或者哪几个呢?
思路方式:
1.如果只想知道该字符是否对还是错,使用匹配
2.想要将已有的字符串变成另一个字符转,替换。
3.想要按照自定的方式将字符串变成多个字符串。切割,获取规则以外的字符串。
思路方式:
1.如果只想知道该字符是否对还是错,使用匹配
2.想要将已有的字符串变成另一个字符转,替换。
3.想要按照自定的方式将字符串变成多个字符串。切割,获取规则以外的字符串。
4.想要拿到符合要求的字符串字串,获取。
import java.util.*;
class RegexText
{
public static void main(String[] args)
{
//test_1();
//test_2();
test_3();
}
//需求:将下列字符串转成:我要学编程
public static void test_1(){
String str="我我...我我...我要.....要要.....学学.....编程....";
str=str.replaceAll("\\.+","");
System.out.println(str);
str=str.replaceAll("(.)\\1+","$1");
System.out.println(str);
}
/*
将IP地址进行地址段顺序的排序
192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30
*/
public static void test_2(){
String ip="192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30";
ip=ip.replaceAll("(\\d+)","00$1");
System.out.println(ip);
ip=ip.replaceAll("0*(\\d{3})","$1");
System.out.println(ip);
String[] arr=ip.split(" ");
TreeSet<String> ts=new TreeSet<String>();
for(String s:arr)
{
ts.add(s);
}
for(String s:ts)
{
System.out.println(s.replaceAll("0*(\\d+)","$1"));
}
}
}