用Java正則去掉字符串中重復出現(xiàn)的字符
更新時間:2010年12月05日 15:23:40 作者:
abcde 順序可以不一樣,也就是去掉重復出現(xiàn)的字符
String str = "abcdeabcdeabcdeaaaaaadddddceeeeabcccccccacadaeec";
str = str.replaceAll(reg, "");
System.out.println(str);
str = str.replaceAll("(?s)(.)(?=.*\\1)", "");
(?s)(.)(?=.*\1)
(?s) 開啟單行模式 DOTALL 讓. 號匹配任意字符
(.) 任意字符 并捕獲在第一組
(?=.*\1) 這是斷言, 表示后面內(nèi)容將是 任意個字符加上第一組所捕獲的內(nèi)容
這樣子,如果這整個式子匹配到,表示,第一個捕獲組內(nèi)容在字符串中,至少出現(xiàn)兩次,替換為 "" 空串.
進行 全局替換后, 整個字符串所出現(xiàn)的字符將不重復。
str = str.replaceAll(reg, "");
System.out.println(str);
str = str.replaceAll("(?s)(.)(?=.*\\1)", "");
(?s)(.)(?=.*\1)
(?s) 開啟單行模式 DOTALL 讓. 號匹配任意字符
(.) 任意字符 并捕獲在第一組
(?=.*\1) 這是斷言, 表示后面內(nèi)容將是 任意個字符加上第一組所捕獲的內(nèi)容
這樣子,如果這整個式子匹配到,表示,第一個捕獲組內(nèi)容在字符串中,至少出現(xiàn)兩次,替換為 "" 空串.
進行 全局替換后, 整個字符串所出現(xiàn)的字符將不重復。
相關(guān)文章
代替正則——HyperScriptExpression聯(lián)合開發(fā)倡議公告
代替正則——HyperScriptExpression聯(lián)合開發(fā)倡議公告...2007-01-01asp正則表達式匹配數(shù)字$數(shù)字$數(shù)字$
用asp實現(xiàn)的匹配:數(shù)字$數(shù)字$數(shù)字$...... 的正則2008-04-04