java正则表达式
package com.cg.tests; import java.util.regex.Matcher; import java.util.regex.Pattern; import org.junit.Test; public class TestPatternMatcher { @Test public void TestReplaceAll(){ String s="Hello World ..."; String s2=s.replaceAll("\\.", ""); System.out.println(s2); String s3=s.replaceAll("\\S", ""); System.out.println(s3); String sLineSep = System.getProperty("line.separator"); String s4 = "abcdefg" + sLineSep + "中国"; System.out.println(s4); System.out.println(s4.replace(sLineSep, "换行")); String s5 = "1985-01-17,在这个日期23423-2384-出生"; Pattern pattern = Pattern.compile("\\d+"); Matcher m = pattern.matcher(s5); while(m.find()){ System.out.println(m.group()+"["+m.start()+"]-["+m.end()+"]"); } System.out.println("###################"); String s6="just do do do do it~!123abc@@1234efg "; // Pattern pdo=Pattern.compile("do\\s(do\\s)+"); Pattern pdo=Pattern.compile("\\d+(\\w+)"); Matcher mdo = pdo.matcher(s6); while (mdo.find()) { for (int i = 0; i < mdo.groupCount(); i++) { // System.out.println(mdo.group() + "[" + mdo.start() + "]-[" // + mdo.end() + "]"); System.out.println(i+":"+mdo.group(i)); } } } @Test public void testGreedy(){ String html = "<table> <tr><td>123ksdjfsld</td><td>34243kdljsfkldsf</td>kdlfjsdf</tr></table"; Matcher m = Pattern.compile("<td>((\\d+)(\\w+))</td>").matcher(html); //非贪婪模式 while(m.find()){ int cnt = m.groupCount(); System.out.println(cnt); for(int i=0;i<=cnt;i++){ System.out.println("group" + i + ":" + m.group(i)); } } } @Test public void testGreedy2(){ String html = "klsdjfl8394387592347ksjd"; Matcher m = Pattern.compile("\\d+?").matcher(html); //非贪婪模式 while(m.find()){ System.out.println(m.group()); } } }