我有串這樣的:Java的字符串過濾掉不需要的字符
−+-~*/@$^#¨%={}[häagen-dazs;:] a (le & co') jsou "výborné" <značky>?!.
而且我想用這個來結束:
häagen-dazs a le & co jsou výborné značky.
相較於How to filter string for unwanted characters using regex?我想保留重音(變音符號)在字符串中。
我用下面的replaceAll:
str.replaceAll("[¨%=;\\:\\(\\)\\$\\[\\]\\{\\}\\<\\>\\+\\*\\−\\@\\#\\~\\?\\!\\^\\'\\\"\\|\\/]", "");
- 這是正確的做法?
- 是否有一個更簡單的方法,如何只保留字母數字字符(以及重音),空格和&。 - 符號?
@Tushar這正則表達式將刪除變音符號的字母。 –
嘗試'的replaceAll( 「?(U)[^ \\ p {L} \\ p {N} \\ S&.-]」, 「」)' –
這裏是一個[演示](HTTP:// rextester。 com/TQFI40953)使用Wiktor的評論。 –