[英]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.