假設我有這樣的如何將字符串格式化爲我在android中的期望?
String s= " %K%%m%r%";
字符串現在我想爲
"k%m%r"
意味着空格會從一開始和結束點被刪除,如果它開始或得到的字符串格式化以%結束,那麼只有這些%將被刪除,如果這個%依次超過一個,那麼這些%將被減少到只有一個%。
我該怎麼做?
假設我有這樣的如何將字符串格式化爲我在android中的期望?
String s= " %K%%m%r%";
字符串現在我想爲
"k%m%r"
意味着空格會從一開始和結束點被刪除,如果它開始或得到的字符串格式化以%結束,那麼只有這些%將被刪除,如果這個%依次超過一個,那麼這些%將被減少到只有一個%。
我該怎麼做?
這裏是正則表達式的解決方案,
您如何根據您的需要,雖然寫的裝飾邏輯和修改。
與單個更換任何連續的字符,
class My
{
public static void main (String[] args) throws java.lang.Exception
{
String data=" %s%%m%%%n";
data = data.replaceAll("([%])(\\1{1,})", "$1");
data = data.trim();
data = data.substring(1,data.length()-1);
System.out.println(data);
}
}
String pattern = "(%+)";
String exclude = "(^%*)|(%*$)";
String candidate = "%K%%%m%%%%%r%";
System.out.println(candidate.trim().replaceAll(exclude,"").replaceAll(pattern, "%"));
產品: ķ%M%R
是它總是「%----%在你的字符串模式? – 2015-03-31 19:04:23
並不總是,但有時可能是 – Reyjohn 2015-03-31 19:05:15
@Reyjohn這是什麼問題,'trim和String.replace(「%%」,「%」);' – JBaba 2015-03-31 19:05:24