本文使用java演示 转载自:JS正则表达式完整教程(略长) 1、匹配16进制颜色 String str = "#ffbbad asda #f33 #ffdd11 #dsasaa "; Pattern pattern = Pattern.compile("#[a-fA-F0-9]{6}|#[a-fA-F0-9]{3}"); Matcher matcher = pattern.matcher(str); while(matcher.find()){ System.out.println(matcher.group()+" start:"+matcher.start()+",end:"+matcher.end()); } 结果 #ffbbad start:0,end:7 #f33 start:13,end:17 #ffdd11 start:18,end:25 2、数字的千位分隔符表示法 比如把"12345678",变成"12,345,678"。 分解 先考虑把在最后三个数字之前加逗号 String str = "123456789456"; //这个正则的意思是:在靠近末尾的三个数字....... 正则表达式案例 正则表达式
Java 提供了功能强大的正则表达式API,在java.util.regex 包下。整理一点常用的api。 正则表达式可视化 Pattern 正则表达式经编译后的表现模式,必须先将正则表达式(字符串形式)编译成此实例。 获取Pattern实例 构造器是私有的,可通过如下方法获取实例: Pattern pattern = Pattern.compile("\d"); Matcher 匹配器,一个Matcher对象可以匹配任意character sequences。 获取Matcher实例 String str = "12"; Pattern pattern = Pattern.compile("\d{2}"); Matcher matcher = pattern.matcher(str); 匹配全部字符串 String str = "12"; System.out.println("----方法1----"); Pattern pattern = Pattern.compile("\d{2}"); Matcher matcher = pattern.matcher(str); .... JAVA正则表达式api 正则表达式