Java classic instance: Find the matched text, java classic instance
Import java. util. regex. matcher; import java. util. regex. pattern;/*** Created by Frank */public class REMatch {public static void main (String [] args) {String patt = "Q [^ u] \ d + \\. "; Pattern r = Pattern. compile (patt); String line = "Order QT300. Now! QT400. "; Matcher m = r. matcher (line); int I = 0; while (m. find () {// group (0) or group () returns the entire matched string (exact match); group (I) only one group System is returned. out. println (patt + "matches \" "+ m.Group(0) + "\" in \ "" + line + "\" "); System. out. println ("start:" + m. start () + "end:" + m. end ());}}}
Output:
Q[^u]\d+\. matches "QT300." in "Order QT300. Now! QT400."start:6 end:12Q[^u]\d+\. matches "QT400." in "Order QT300. Now! QT400."start:18 end:24
Import java. util. regex. matcher; import java. util. regex. pattern;/*** Created by Frank */public class REMatchTwoFields {public static void main (String [] args) {String inputLine = "Adams, John Quincy "; pattern r = Pattern. compile ("(. *),(. *) "); Matcher m = r. matcher (inputLine); if (! M. matches () {throw new IllegalArgumentException ("Bad Input");} // The entire original string for (int I = 0; I <m. groupCount () + 1; I ++) {System. out. println ("group" + I + ":" + m. group (I ));}}}
Output:
Group 0: Adams, John Quincy Group 1: Adams group 2: John Quincy