golang中判断字符串是否为空行
在使用golang的tail库读文件时,可能会出现读入一行空行的情况,我们有时候会想过滤掉这一行记录。
golang中如何判断一行字符串是否为空行?
使用strings.Trim()去除尾部换行符,再用len()判断长度是否为0即可。
示例:
if len(strings.Trim(strings.Trim(line.Text, "\n"), "\r")) == 0 {
//这是空行
}
注意我们要先去除"\n"再去除"\r",这样是为了兼容unix、windows、macos多个系统。
"\r"是回车,前者使光标到行首,(carriage return)
"\n"是换行,后者使光标下移一格,(line feed)
Unix系统里,每行结尾只有"<换行>",即"\n";
Windows系统里面,每行结尾是"<回车><换行>",即"\r\n";
Mac系统里,每行结尾是"<回车>",即"\r"。