The 5th condition doesn't pass. Is my regex bad? The result to this seems fine on my side:
line = line.replaceAll("[^A-Za-z0-9_]","");