public final class RegexUtil extends Object
Pattern,
Matcher,
String.matches(String)| Modifier and Type | Method and Description |
|---|---|
static Pattern |
buildPattern(String regexPattern,
int flags)
如果cache中有,那么直接返回, 如果没有构造一个并塞到cache中.
|
static Map<Integer,String> |
group(String regexPattern,
CharSequence input)
返回在以前匹配操作期间由给定组捕获的输入子序列.
|
static String |
group(String regexPattern,
CharSequence input,
int groupNo)
返回在以前匹配操作期间由给定组捕获的输入子序列.
|
static boolean |
matches(String regexPattern,
CharSequence input)
编译给定正则表达式
regexPattern ,并尝试将给定输入 input 与其匹配. |
public static boolean matches(String regexPattern, CharSequence input)
regexPattern ,并尝试将给定输入 input 与其匹配.
Pattern.matches(String, CharSequence) 等价于getMatcher(String, CharSequence).matches();
regexPattern - 正则表达式字符串,pls use "RegexPattern"input - The character sequence to be matched,support String,StringBuffer,StringBuilder... and so onregexPattern 是null,抛出 NullPointerExceptioninput 是null,返回 falsegetMatcher(String, CharSequence),
Matcher.matches(),
Pattern.matches(String, CharSequence)public static Map<Integer,String> group(String regexPattern, CharSequence input)
对于匹配器 m、输入序列 s 和组索引 g,表达式 m.group(g) 和 s.substring(m.start(g), m.end(g))是等效的.
捕获组是从 1开始从左到右的索引.组0表示整个模式,因此表达式 m.group(0)等效于 m.group().
String regexPattern = "(.*?)@(.*?)"; String email = "feilong@163.com"; RegexUtil.group(regexPattern, email);返回:0 feilong@163.com 1 feilong 2 163.com
regexPattern - 正则表达式模式,比如 (.*?)@(.*?)input - 需要被group的字符串,比如 feilong@163.com,support String,StringBuffer,StringBuilder... and so onregexPattern 是null,抛出 NullPointerExceptioninput 是null,抛出 NullPointerExceptionCollections.emptyMap()getMatcher(String, CharSequence),
Matcher.group(int)public static String group(String regexPattern, CharSequence input, int groupNo)
对于匹配器 m、输入序列 s 和组索引 g,表达式 m.group(g) 和 s.substring(m.start(g), m.end(g))是等效的.
捕获组是从 1开始从左到右的索引.组0表示整个模式,因此表达式 m.group(0)等效于 m.group().
String regexPattern = "(.*?)@(.*?)"; String email = "feilong@163.com"; RegexUtil.group(regexPattern, email, 1);//feilong RegexUtil.group(regexPattern, email, 2);//163.com
regexPattern - 正则表达式模式,比如 (.*?)@(.*?)input - 需要被group的字符串,比如 feilong@163.com,support String,StringBuffer,StringBuilder... and so ongroupNo - 组号,从0开始regexPattern 是null,抛出 NullPointerExceptioninput 是null,抛出 NullPointerExceptioninput < 0 ,抛出 IllegalArgumentExceptiongetMatcher(String, CharSequence),
Matcher.group(int)Copyright © 2008-2019 by feilong