检查字符串是否包含来自java中任何平台的换行符?

时间:2014-07-02 13:31:29

标签: java guava apache-commons

根据这个问题,是否有更好/更强大的方法来检查String是否在Java中包含来自任何平台的换行符,或者是否低于建议的方法?

if (myString.contains("\n") || myString.contains("\r") || myString.contains("\r\n")) {

}

2 个答案:

答案 0 :(得分:1)

对于西式语言,在字符串中查找'\r''\n'至少应该适用于Windows,Unix和旧MAC。如果你想支持现代Apple(OS X以上版本),Linux和Windows机器,你实际上可以只查找'\n'

如果您希望支持从垃圾堆中挖出的机器may have to look for other characters as well。此外,Asian languages may not use line breaks or use other whitespace as replacement character

如果可能适用,请注意格式化文本的其他方法。如果可以假设HTML,<br>也可能表示换行符。

答案 1 :(得分:-1)

也许这是解决您问题的通用解决方案:

if (myString.contains(System.getProperty("line.separator"))) {
//your code here
}

它使用系统属性来查找用户系统上使用的行分隔符。