> Java > java지도 시간 > Java에서 정규식의 자세한 사용

Java에서 정규식의 자세한 사용

黄舟
풀어 주다: 2017-10-20 09:48:59
원래의
1426명이 탐색했습니다.

这篇文章主要介绍了Java 正则表达式详细使用,非常不错,具有参考借鉴价值,需要的朋友参考下吧

Java 正则表达式的使用,具体内容如下所示:


java.util.regex.Pattern
java.util.regex.Matcher
로그인 후 복사

1.Match

match 是从字符串最头部开始匹配,一直到结束,需要匹配整个串


String content = "Welcome, bob!";
content.match("bob");  //false
content.match(".*bob")  //false
content.match(".*bob.*") //true
String str="test@yahoo.com.cn";
Pattern pattern = Pattern.compile("[\\w\\.\\-]+@([\\w\\-]+\\.)+[\\w\\-]+",Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(str);
boolean a = matcher.matches(); //匹配的时候返回true
로그인 후 복사

2.Find


boolean b = matcher.find(); //包含正则匹配的串为true
// 找到所有匹配的串
while(matcher.find()) {
  String extracted = matcher.group(0)
}
로그인 후 복사

3.Replace


matcher.replaceFirst("")
matcher.replaceAll("");
로그인 후 복사

4.Group


group(0) 代表整个表达式
String line = "#星座运势#20171013";
String pattern = "\\#(\\p{L}*)\\#(\\d+)"; //\p{L} 匹配 unicode any kind of letter from any language
// 创建 Pattern 对象
Pattern r = Pattern.compile(pattern);
// 现在创建 matcher 对象
Matcher m = r.matcher(line);
if (m.find( )) {
  System.out.println("Found value: " + m.group(0) );  // "#星座运势#20171013"
  System.out.println("Found value: " + m.group(1) );  // 星座运势
  System.out.println("Found value: " + m.group(2) );  // 20171013
} else {
  System.out.println("NO MATCH");
}
로그인 후 복사

总结

위 내용은 Java에서 정규식의 자세한 사용의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿