I am trying to read in the contents of a textfile line by line.
I need to process only lines that contain characters when I read it in as so:
This seems like a simple problem, but I cannot find the conditional that would determine a blank line. I am a beginner with regex too.
Paul Clapham wrote:Yeah, that's much better than a regex, isn't it?
You could also do it like this (pretty much the same):
The thread title specifies "Whitespace" which according to the Pattern class (I know not really a definitive source but the best I can find without too much research) is the character set [ \t\n\x0B\f\r] but the OP body implies just a simple space. If indeed the OP just wants to handle spaces and not white spaces then the responses so far are probably the best approach but if white spaces are to be white spaces in the regex sense then
could be used. Since the readLine() method does not return either '\r' or '\n' (they are treated as line terminators) then this actually more than is needed but it will match any empty string.
Richard Tookey wrote:If indeed the OP just wants to handle spaces and not white spaces then the responses so far are probably the best approach but if white spaces are to be white spaces in the regex sense then...
Actually, if you look at the docs for String.trim(), you'll see that it removes all characters at or below '\u0020' (the space character) from the start and end of a String, which is pretty darn close to regex's interpretation of whitespace (although, as you say, not exactly the same).
BTW, Thanks Paul. I hadn't even noticed that 1.6 added the isEmpty() method. Amazing what you miss sometimes.