在开发中,正则表达式有很大的用途的,现在说说它最基本的4个常用的功能:
查询、提取、分割、替换,用代码说话,看看就明白了
- package com.sucre.blog;
-
-
import java.util.regex.Matcher;
-
import java.util.regex.Pattern;
-
-
-
-
-
-
-
public class RegularExpressions {
-
-
-
-
-
private static void searchCharacter(){
-
String str="sucre blog 51CTO.COM";
-
String regEx="c|l";
- Pattern p=Pattern.compile(regEx);
-
-
- Matcher m=p.matcher(str);
-
boolean rs=m.find();
- System.out.println(rs);
- }
-
-
-
-
-
private static void extraction(){
-
String regEx = "(.+)$";
-
String str="c:\\name.txt";
- Pattern p=Pattern.compile(regEx);
- Matcher m=p.matcher(str);
-
boolean rs=m.find();
-
for(int i=1;i<=m.groupCount();i++){
- System.out.println(m.group(i));
- }
- }
-
-
-
-
-
private static void segmentation(){
-
String regEx="::";
- Pattern p=Pattern.compile(regEx);
-
String[] r=p.split("sucre::blog::51cto");
-
for (int i = 0; i < r.length; i++) {
- System.out.println(r[i]);
- }
- }
-
-
-
-
-
private static void replace(){
-
String regEx="a+";
- Pattern p=Pattern.compile(regEx);
-
Matcher m=p.matcher("aaabbced a ccdeaa");
-
String s=m.replaceAll("A");
- System.out.println(s);
-
- }
-
public static void main(String[] args) {
- searchCharacter();
- extraction();
- segmentation();
- replace();
- }
-
- }
运行结果为
- true
- c:\name.txt
- sucre
- blog
- 51cto
- Abbced A ccdeA
许多复杂的功能都是在这些简单功能的基础上构建起来的,基础很重要。
本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/416198,如需转载请自行联系原作者