RegexTestHarness.java
, for exploring the regular expression
constructs supported by this API.
The command to run this code is java RegexTestHarness
;
no command-line arguments are accepted.
The application loops repeatedly, prompting the user for a regular expression
and input string. Using this test harness is optional,
but you may find it convenient for exploring the test cases
discussed in the following pages.
import java.io.Console; import java.util.regex.Pattern; import java.util.regex.Matcher; public class RegexTestHarness { public static void main(String[] args){ Console console = System.console(); if (console == null) { System.err.println("No console."); System.exit(1); } while (true) { Pattern pattern = Pattern.compile(console.readLine("%nEnter your regex: ")); Matcher matcher = pattern.matcher(console.readLine("Enter input string to search: ")); boolean found = false; while (matcher.find()) { console.format("I found the text \"%s\" starting at " + "index %d and ending at index %d.%n", matcher.group(), matcher.start(), matcher.end()); found = true; } if(!found){ console.format("No match found.%n"); } } } }
Before continuing to the next section, save and compile this code to ensure that your development environment supports the required packages.