这行代码让我很困惑,
String[] parseEmailDomain = parseEmail[1].split(".");
当我执行 System.out.println(parseEmailDomain.length)
时,数组的大小最终为 0 但 System.out.println(parseEmail[1]) 的输出
是
cs.uh.edu
有人知道为什么当我尝试拆分数组时,它没有拆分,但当我尝试只输出数组时,它输出得很好吗?
我可以做到这一点
String[] parseEmail = parseLn[i].split("@");
System.out.println(parseEmail[0]);
的输出是 hanak
parseLn 是文本文件中的整行
最佳答案
因为 .
将匹配任何内容,因为 split 采用 regex!
您需要使用 \
转义点:
String[] parseEmailDomain = parseEmail[1].split("\\.");
另请参阅此处的相关答案:Java RegEx meta character (.) and ordinary dot?
关于java - 由于某种原因,我的 split() 在我的代码的一行中工作,但在另一行中不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22121519/