java的反义都是需要加 \ 的,如 \" 表示 " 字符
正则语言本身也有些字符需要转义,也是加 \ ,如 \. 表示 “.” 字符
问题来了,如果在java要使用正则的转义,等于施加了双重语法,于是就出现了 \\* ,表示 "*" 字符
更奇怪的是,表示 "\" 字符,java要用 \\\\ 四个\ !!!!变态啊!!!
元字符,如\b, \s,查看文档就够了,写的超详细
[]表示字符组,字符组里面和外面,元字符的定义和意义是不同的,如[-.],这里.表示 "." ,-表示"-",不过如果 - 不在字符组的开头,就还是表示范围
j(a|e)y 与 j[a|e]y 是不同的,后者的|不表示或,只是 "|" 字符
写点需要经验的:
[\\s&&[^\\n\\r]] 表示以空白符开始匹配,且不能是换行或回车