簡體   English   中英

關於java,String.replaceAll

[英]about java, String.replaceAll

我一直在嘗試解決這個問題,我對replaceAll方法做了一些研究,似乎它使用了正則表達式。 但我從未聽說過任何包含“。”的正則表達式。 字符。 這是我一直在使用的代碼:

System.out.println(parsed[1]);
myStatus = parsed[1].replaceAll("...", " ");
System.out.println("new: " + myStatus);
status.setText(myStatus);

輸出結果是:

舊...字符串新:

如果要替換文字字符串"..." (三個點),請執行以下任一操作:

  • 使用replace("...", " ") 使用正則表達式
  • 使用replaceAll("\\\\.{3}", " ") ,這是您在正則表達式中指定文字點的方式

除非您需要使用replaceAll() (因為您正在調用的某些實現都使用它),否則請使用replace()

編輯:

感謝路易 \\\\.{3} 簡單的\\\\.\\\\.\\\\. (喔!)

您的電話實際上正在執行的操作是將任何3個字符組替換為一個空格。 因此,字符串"old...string"將變為4個空格。 您將需要轉義點或定義字符類 量詞 ,因為它們是預定義字符

就像是

myStatus = parsed[1].replaceAll("[.]{3}", " ");

注意 :您可以在此處測試Java的正則表達式。

暫無
暫無

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

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