final static private Pattern includePattern = Pattern.compile("^\\s+([^\\s]*)");
...
Matcher mtest = includePattern.matcher(" this.txt");
String ftest = mtest.group(1);
I get an exception No match found at java.util.regex.Matcher.group(Matcher.java:468)
I’m looking for at least 1 space character followed by a captured group of nonspace characters. Where have I gone wrong?
You’ll first need to call
.find()before you can usegroup(...).Note that
find()returns aboolean, so it’s safe(r) to do something like this:And
[^\\s]could be rewritten as\\S(capitals).You might have simplified your example a bit in your question, but I assume you’re aware of the fact that
String.trim()takes care of any leading and trailing white space characters.