如何删除^ M字符java

Jam*_*sev 3 truncate dos carriage-return

问题: 如果String以\ r结尾,请删除\ r

我从这样的事情开始

if (masterValue.endsWith(CARRIAGE_RETURN_STR)) {
  masterValue = masterValue.replace(CARRIAGE_RETURN_STR, "");
}
Run Code Online (Sandbox Code Playgroud)

哪里

public static final String CARRIAGE_RETURN_STR = (Character.toString(Constants.CARRIAGE_RETURN));
public static final char CARRIAGE_RETURN = '\r';
Run Code Online (Sandbox Code Playgroud)

这对我来说似乎很尴尬.

有没有简单的方法来删除\ r字符?

然后我转到这个:

if (value.contains(CARRIAGE_RETURN_STR)) {
   value = value.substring(0, value.length()-3);
Run Code Online (Sandbox Code Playgroud)

// - 3因为我们从0(1)开始,行以\n(2)结尾,我们需要删除1个char(3)

但这似乎也很尴尬.

你能建议一个更简单,更优雅的解决方案吗?

Pla*_*ure 9

你知道,正则表达式可以支持字符串结尾锚定.(有关更多信息,请参阅此Javadoc页面)

myString.replaceAll("\\r$", "");
Run Code Online (Sandbox Code Playgroud)

我相信这也可以解决问题.\n \n - > - >