Java SE之正则表达式四:获取
/**
*
* @author Zen Johnny
* @date 2018年4月29日 下午4:51:08
*
*/
package demo.regex;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegexGetDemo {
public static void getDemo(String string, String regex) {
//step1:将规则封装成对象
Pattern pattern = Pattern.compile(regex);
//step2:让正则对象和要提取的字符串相关联,获取匹配(器)引擎对象
Matcher matcher = pattern.matcher(string);
while(matcher.find()) {//不断地利用正则引擎查找符合正则表达式的对象,找到:true;没有找到:false
System.out.println("start:" + matcher.start() + " word:" + matcher.group() + " end:" + matcher.end());
//返回当前查找到的一个子串,并返回其单词的开始start()与结束区间end()
}
}
public static void main(String args[]) {
//将连续3个字母以上的单词提取出来
//提示:\b:单词边界;\B非单词边界
String string = "ming tian jiu yao fang jia la,da jia~";
String regex = "\\b[a-zA-Z]{3,}\\b";
getDemo(string,regex);
/*
ming
tian
jiu
yao
fang
jia
jia
*/
}
}
output
start:0 word:ming end:4 start:5 word:tian end:9 start:10 word:jiu end:13 start:14 word:yao end:17 start:18 word:fang end:22 start:23 word:jia end:26 start:33 word:jia end:36
本文作者:
千千寰宇
本文链接: https://www.cnblogs.com/johnnyzen
关于博文:评论和私信会在第一时间回复,或直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
日常交流:大数据与软件开发-QQ交流群: 774386015 【入群二维码】参见左下角。您的支持、鼓励是博主技术写作的重要动力!
本文链接: https://www.cnblogs.com/johnnyzen
关于博文:评论和私信会在第一时间回复,或直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
日常交流:大数据与软件开发-QQ交流群: 774386015 【入群二维码】参见左下角。您的支持、鼓励是博主技术写作的重要动力!

浙公网安备 33010602011771号