java正则表达式的应用——去掉固定电话号码前面的区号
2012-11-02 21:52
357 查看
class Test002 {
public static void main(String[] arguments) {
String src = new String("ab43a2c43d");
System.out.println(src.replace("3", "f")); //=>ab4fa2c4fd.
System.out.println(src.replaceAll("\\d", "f")); //=>abffafcffd.
System.out.println(src.replaceAll("a", "f")); //=>fb43f2c43d.
System.out.println(src.replaceFirst("4", "h")); //=>abh3a2c43d.
System.out.println(src.replaceFirst("\\d", "f")); //=>abf3a2c43d
String num = new String("076938816888");
System.out.println(num);
// 00853,00886,00852 not treated
String regex1 = "^010";
String regex2 = "^02[0-9]{8,9}"; //0207777777, 02988888888
String regex3 = "^0[3-9][0-9]{9,10}"; //03947777777, 076912345678
String regex1f = "010";
String regex2f = "02[0-9]"; //020,021,022,023,024,025,027,028,029
String regex3f = "0[3-9][0-9]{2}"; //0310,0769,0755,0999,...
if (10 <= num.length() && num.length() <= 12) {
if (num.matches(regex1)) {
num = num.replaceFirst(regex1f, "");
} else if (num.matches(regex2)) {
num = num.replaceFirst(regex2f, "");
} else if (num.matches(regex3)) {
num = num.replaceFirst(regex3f, "");
}
}
System.out.println(num);
}
}
public static void main(String[] arguments) {
String src = new String("ab43a2c43d");
System.out.println(src.replace("3", "f")); //=>ab4fa2c4fd.
System.out.println(src.replaceAll("\\d", "f")); //=>abffafcffd.
System.out.println(src.replaceAll("a", "f")); //=>fb43f2c43d.
System.out.println(src.replaceFirst("4", "h")); //=>abh3a2c43d.
System.out.println(src.replaceFirst("\\d", "f")); //=>abf3a2c43d
String num = new String("076938816888");
System.out.println(num);
// 00853,00886,00852 not treated
String regex1 = "^010";
String regex2 = "^02[0-9]{8,9}"; //0207777777, 02988888888
String regex3 = "^0[3-9][0-9]{9,10}"; //03947777777, 076912345678
String regex1f = "010";
String regex2f = "02[0-9]"; //020,021,022,023,024,025,027,028,029
String regex3f = "0[3-9][0-9]{2}"; //0310,0769,0755,0999,...
if (10 <= num.length() && num.length() <= 12) {
if (num.matches(regex1)) {
num = num.replaceFirst(regex1f, "");
} else if (num.matches(regex2)) {
num = num.replaceFirst(regex2f, "");
} else if (num.matches(regex3)) {
num = num.replaceFirst(regex3f, "");
}
}
System.out.println(num);
}
}
相关文章推荐
- Java正则表达式验证固定电话号码符合性
- 固定电话号码正则表达式(支持手机号码,3-4位区号,7-8位直播号码,1-4位分机号)
- JAVA 正则表达式简单应用
- 正则表达式概述与JAVA中正则表达式的应用
- java正则表达式去掉所有HTML标签
- 用JS去掉字符串中的空格(正则表达式的应用)
- Java正则表达式应用总结
- 校验手机号码的正则表达式写法 (java实现)
- 通过Java正则表达式去掉SQL代码中回车换行和多余空格
- Java中正则表达式的高级应用
- Java正则表达式应用
- java--正则表达式的应用:读取文件,获取其中的电话号码
- JAVA中正则表达式的应用(二)
- 电话号码正则表达式(支持手机号码,3-4位区号,7-8位直播号码,1-4位分机号)
- Java正则表达式应用总结
- 什么是正则表达式以及在Java1.4中的应用
- java正则表达式应用--验证字符串是否为数字(转载)
- 黑马程序员——Java基础——String类、StringBuffer类、StringBuilder类、基本数据类型对象包装类操作、正则表达式应用
- 使用java正则表达式去掉多余的.与0