簡體   English   中英

Java正則表達式刪除字符串末尾的換行符和空格

[英]Java regex to remove newline and space at the end of string

我是java regex的新手,所以這個問題對於某人來說可能很容易。 我有一個原始字符串:

"\n\n This is \n\r simple \n     string \r   "

現在,我想將其格式化為:

"This is \n\r simple \n    string"

我想在此字符串的開頭和結尾處修剪此調整。 但是trim()方法僅適用於空格(\\ s)。

我嘗試先使用替換

replaceFirst("[\\t\\n\\r]", "") 

它在字符串的開頭也可以正常工作。 但是最后看不到替換,所以我用

replaceAll("[\\t\\n\\r]$", "\n")

“ $”將僅影響最后一個,但是對於“ \\ r \\ r \\ n \\ n”,僅替換最后一個\\ n。

如何刪除字符串末尾的所有“ \\ r \\ r \\ n \\ n”?

謝謝

更新:

抱歉,我很懶,沒有仔細測試。 trim()在這種情況下可以正常工作。

如果您設置使用正則表達式* ,則可以這樣進行:

s = s.replaceAll("^\\s+|\\s+$", "");

演示

該表達式刪除開頭(即^錨之后)或結尾(即$錨之前)的一系列空格。

*大概,您可能只想作為學習練習來做,因為trim()方法做的事情完全一樣。

您不需要正則表達式, trim()將完成此工作。

String result = oldstring.trim();

Ideone演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM