您的位置:首页 > 编程语言 > Java开发

正则表达式【java笔记】

2014-07-15 17:21 183 查看
用途:

字符串匹配(字符匹配)
字符串查找
字符串替换

例如:

IP地址是否正确
从网页中揪出Email地址
从网页揪出链接的
计算代码中注释,空行,代码的数量

类:

java.lang.String
java.util.regex.Pattern
java.util.regex.Matcher

Pattern类-模式
Matcher类-编译
string.matches.(regex) 常用格式
'.'任何字符
'*' 零次或多次
'+' 一次或多次
'?' 一次货一次也没有
[^abc0-9]:'[]'匹配一个字符(范围),'^'取反
'{}'匹配字符个数
[a-z]|[A-Z] == [a-z[A-Z]] == [a-zA-Z]取并集
[A-Z]&&[RFG]取交集
\d数字字符,\D数字字符取反
\s所有空白字符,\S除了空白字符的字符
\w构成单词的字符,\W 构成单词的字符取反
'^'中括号外代表一行开头,'$'代表一行的结尾,\b代表一个单词的边界
匹配空白行: "line".matches("^[\\s&&[^\\n]]*$"));
m.matches()匹配整个字符串
m.find()匹配一段字符
m.reset();把匹配进去的还原出来
m.lookingAt();每次从头开始找
m.start()匹配组起始点 - m.end()匹配组结束点
m.replaceAll()m.replaceAll()
m.appendReplacement() m.appendTail()
m.gropu() //分组编号从左往右数左括号
贪婪Greedy 不情愿的Reluctant(?) 独占的Possessive(+)
(?)非捕获组 non-capturing groups
back refenrences : \组号
flags的简写:忽略大小写(?i)等
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: