use isspace to judge wihte spaces and tabs and newlines