正则表达式例子
第一步:1.例子:
import java.util.LinkedList;import java.util.List;import java.util.StringTokenizer;import java.util.regex.Matcher;import java.util.regex.Pattern;public class Test {/** * 正则表达式 */public static void main(String[] args) {//替代字符串System.out.println("=============替代字符串=============");String messageReplace = "我是一个大帅哥,帅哥,哥";Pattern patterReplace = Pattern.compile(",");messageReplace = patterReplace.matcher(messageReplace).replaceAll(",");System.out.println(messageReplace); //截取字符串System.out.println("=============截取字符串=============");String messageCut = "expected:哥 expected:哥 but was:帅哥but was:帅哥"; Pattern patterCut1 = Pattern.compile("(expected:)(.*?)(but was:)(.*)"); Pattern patterCut2 = Pattern.compile("(expected:)(.*)(but was:)(.*)");Matcher match1 = patterCut1.matcher(messageCut);if(match1.find()){System.out.println((match1.group(2)));System.out.println(match1.group(4));}Matcher match2 = patterCut2.matcher(messageCut);if(match2.find()){System.out.println((match2.group(2)));System.out.println(match2.group(4));}//分割字符串System.out.println("=============分割字符串=============");String messageSplit = "(1,2,3),(4,5,6,7),(8,9,10)"; List<List<Object>> paramList = new LinkedList<List<Object>>();Pattern patternSplit = Pattern.compile("(\\()(.*?)(\\))");Matcher match = patternSplit.matcher(messageSplit);while (match.find()) {List<Object> list = new LinkedList<Object>();String strList = match.group(2);StringTokenizer st = new StringTokenizer(strList,",");while (st.hasMoreElements()) {Object param = st.nextElement();list.add(param);}paramList.add(list);}System.out.println(paramList);}}
2.运行结果:
http://dl.iteye.com/upload/attachment/0076/2394/91d8ce25-58ca-357f-a472-6a76529bc2cc.png
参考资料:
1.http://www.iteye.com/topic/603554
2.http://www.iteye.com/topic/1127566
页:
[1]