[英]Removing char from string?
我正在輸入字符串中搜索以下文本: +Bob
如果程序找到+Bob
,我希望它刪除Bob之前的+
不過,我不希望該計划消除所有+
的,只是+
' 之前或之后鮑勃S,有或沒有介入空格。 因此,例如: + Bob
的字符串仍然算作+Bob
。
String str = "+Bob foo + bar";
str = str.replace("+Bob", "Bob");
System.out.println(str);
鮑勃·富+酒吧
要處理+
和Bob
之間的空格,可以使用正則表達式:
String str = "+Bob foo + bar";
str = str.replaceAll("\\+\\s*Bob", "Bob");
要在之后檢查加號,請使用
str = str.replaceAll("Bob\\s*\\+", "Bob");
抱歉,我拒絕了你們的投票,因為答案是:使用StringBuffer.deleteCharAt(int Index)
public class Test {
public static void main(String[] args) throws Exception {
String regexp = "(?)\\+(\\s?)+Bob";
System.out.println("+Bob foo + bar".replaceAll(regexp, "Bob"));
System.out.println("+ Bob foo + bar".replaceAll(regexp, "Bob"));
System.out.println("+ Bob foo + bar +Bob".replaceAll(regexp, "Bob"));
System.out.println("+ Bob foo + bar + Bob".replaceAll(regexp, "Bob"));
}
}
/* output :
Bob foo + bar
Bob foo + bar
Bob foo + bar Bob
Bob foo + bar Bob
*/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.