This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
Have you tried escaping the + character. It is a metacharacter, so has to be escaped. Only the backslash probably has to be escaped too! Try changing the + to \\+ and see whether that works. Read the regular expressions part of the Java Tutorials. It is nice and easy to understand.
OK, so you don't know in advance if a line starts with this or not, right? And if it doesn't, you don't want to skip it. In that case you can't use skip(), because that will skip the pattern you specify, and will complain if it can't be found. I don't see a good way to use hasNext(pattern) either. Why don't you just read the line using nextLine(), and then test the string to see if it should be ignored?
Using line.startsWith("+") is simple, but if you need more flexibility, you might try something like
The ^ and $ are unnecessary here since we've already isolated a single line, and matches() requires a match of the entire string. But we need the .* too, to absorb any other characters after the +. You might further modify this to allow some optional whitespace at the beginning of the line:
Other modifications are possible, depending on your needs.