- import java.util.regex.Matcher;
- import java.util.regex.Pattern;
- public class Test {
- public static void main(String[] args) {
- // 认识 \s \w \d \
- // 这个程序结果全为true
- p(" \n\r\t".matches("\\s{4}"));
- p(" ".matches("\\s"));
- p("a_8".matches("\\w{3}"));
- //[a-z]{1,3}表示a-z中有1个到3个
- //\\d+表示数字1次或多次
- //[&^#%]+ 这4个中出现1次或多次
- p("abc888&^%".matches("[a-z]{1,3}\\d+[&^#%]+"));
- //在java字符串中,2个反斜线代表1个反斜线,如何用正则表示式匹配一个反斜线?
- p("\\".matches("\\\\"));
- }
- public static void p(Object o) {
- System.out.println(o);
- }
- }
复制代码
上面是我原来笔记中的一个例子。在java字符串中,2个反斜线代表1个反斜线,如何用正则表示式匹配一个反斜线?
p("\\".matches("\\\\"));后面那个是正则表达式,正则表达式本身要匹配一个反斜线的话,需要2个反斜线,然后要用字符串把这个正则表示式表现出来的时候,每一个反斜线都要用两个反斜线替代,所以要有4个反斜线。所以要在正则表达式中匹配1个反斜线的话,要写4个
|