关于正则表达式的一道面试题
2017-07-24 14:36
344 查看
import java.util.Arrays;
public class
ip_test {
/** * "172.25.27.1 3.25.118.32 105.38.225.12" * 对上面字符串把ip地址切割出来进行排序 , 如果直接排序,得出的结果是105.38.225.12
172.25.27.1 3.25.118.32 不符合要求 * */
public static
void main(String[] args) {
String ip = "172.25.27.1 3.25.118.32 105.38.225.12";
System.out.println("原字符串:"+ip);
ip=ip.replaceAll("(\\d+)",
"00$1");
System.out.println("先补0:"+ip);
ip=ip.replaceAll("0*(\\d{3})",
"$1");
System.out.println("留三位:"+ip);
String[] new_ip = ip.split(" +");
// System.out.println(new_ip);//这样打印的是字符串数组的首地址
Arrays.sort(new_ip);
System.out.println("去0再排序后:");
for (String string : new_ip) {
System.out.println(string.replaceAll("0*([0-9]{1,2})",
"$1"));
}
}
}
import java.util.Arrays;
public class
ip_test {
/** * "172.25.27.1 3.25.118.32 105.38.225.12" * 对上面字符串把ip地址切割出来进行排序 , 如果直接排序,得出的结果是105.38.225.12
172.25.27.1 3.25.118.32 不符合要求 * */
public static
void main(String[] args) {
String ip = "172.25.27.1 3.25.118.32 105.38.225.12";
System.out.println("原字符串:"+ip);
ip=ip.replaceAll("(\\d+)",
"00$1");
System.out.println("先补0:"+ip);
ip=ip.replaceAll("0*(\\d{3})",
"$1");
System.out.println("留三位:"+ip);
String[] new_ip = ip.split(" +");
// System.out.println(new_ip);//这样打印的是字符串数组的首地址
Arrays.sort(new_ip);
System.out.println("去0再排序后:");
for (String string : new_ip) {
System.out.println(string.replaceAll("0*([0-9]{1,2})",
"$1"));
}
}
}
相关文章推荐
- 关于正则表达式的一道面试题
- C#中一道关于员工信息系统的题(主要考察LinQ和正则表达式验证)
- 一道前端面试题,关于函数声明和函数表达式
- 13道关于JavaScript正则表达式的面试题
- 关于正则表达式匹配任意字符(包括换行符)的写法
- 关于Python正则表达式的问题
- 关于java继承的一道经典面试题
- 关于正则表达式的简单引用
- 关于正则表达式 g,m 参数的总结,为了回答“正则表达式(/[^0-9]/g,'')中的"/g"是什么意思?”
- php关于正则表达式贪婪模式与非贪婪
- 关于JS通过正则表达式循环检测多个Email格式_已经测试通过.
- 一道关于返回指针和返回数组名的面试题
- 一道SQL语句面试题,关于group by的
- 关于JS通过正则表达式循环检测多个Email格式_已经测试通过.
- 关于 正则表达式应用的收集
- 关于一道IEEE754浮点数标准的百度面试题再论
- c# 中关于正则表达式的用法总结(很全面)
- 正则表达式面试题:32fdsfd8fds0fdsf9323k32k中找出3280932332
- 关于几个正则表达式
- 一篇关于Java正则表达式的理解