源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

java中的正则操作方法总结

  • 时间:2020-05-31 08:06 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:java中的正则操作方法总结
正则表达式在处理字符串的效率上是相当高的 关于正则表达式的使用,更多的是自己的经验,有兴趣可以参阅相关书籍 这里主要写一下java中的正则操作方法 [b]实例1:匹配 [/b]
[u]复制代码[/u] 代码如下:
import java.util.Scanner; class Demo {     public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         //获取输入         System.out.print("Please Enter:");         String str = sc.nextLine();         check(str);     }     private static void check(String str) {         //匹配第一位是1-9,第二位及以后0-9(个数在4-10之间)         String regex = "[1-9][0-9]{4,10}";         /*         //匹配单个字符是大小写的a-z         String regex = "[a-zA-Z]";         //匹配数字,注意转义字符         String regex = "\\d";         //匹配非数字         String regex = "\\D";         */         if(str.matches(regex)) {             System.out.println("匹配成功");         } else {             System.out.println("匹配失败");         }     } }
此处String类中的matches()方法用于匹配 [img]http://files.jb51.net/file_images/article/201310/201310231016534.png[/img] [b]实例2:切割 [/b]
[u]复制代码[/u] 代码如下:
import java.util.Scanner; class Demo {     public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         System.out.print("Please Enter:");         String str = sc.nextLine();         split(str);     }     private static void split(String str) {         //匹配一个或多个空格         String regex = " +";         String[] arr = str.split(regex);         for (String s : arr) {             System.out.println(s);         }     } }
此处String类中的split()方法用于按正则表达式切割,返回一个String数组 [img]http://files.jb51.net/file_images/article/201310/201310231016535.png[/img] [b]实例3:替换 [/b]
[u]复制代码[/u] 代码如下:
import java.util.Scanner; class Demo {     public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         System.out.print("Please Enter:");         String str = sc.nextLine();         replace(str);     }     private static void replace(String str) {         //匹配叠词         String regex = "(.)\\1+";         String s = str.replaceAll(regex, "*");         System.out.println(s);     } }
注意replaceAll有两个参数,一个是正则,一个是替换的字符 [img]http://files.jb51.net/file_images/article/201310/201310231016536.png[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部