Java android替换字符串中的多个字符
我知道这可能是一个业余问题,但由于某种原因,我不记得该怎么做。 我有两条线Java android替换字符串中的多个字符,java,android,Java,Android,我知道这可能是一个业余问题,但由于某种原因,我不记得该怎么做。 我有两条线 String s ="["; String q ="]"; 如果我的文本包含其中任何一项,我想将其替换为w,即: String w = ""; 我尝试了以下方法: output=String.valueOf(profile.get("text")).replace(s&&q, w); 据我所知,如果S([)和Q(])中的任何一个在文本中,它们将被w替换。 我的问题是得到2。如果我只尝试更换一个,那么
String s ="[";
String q ="]";
如果我的文本包含其中任何一项,我想将其替换为w
,即:
String w = "";
我尝试了以下方法:
output=String.valueOf(profile.get("text")).replace(s&&q, w);
据我所知,如果S([)和Q(])中的任何一个在文本中,它们将被w替换。
我的问题是得到2。如果我只尝试更换一个,那么它就会工作。否则就不会了
任何帮助都将不胜感激您也可以将它们嵌套起来:
output=String.valueOf(profile.get("text")).replace(s, w).replace(q, w);
我想这就是你的意思:
String s = "abc[def]";
String w = "hello";
System.out.println(s.replaceAll("\\[|\\]", w));
输出abchellodefhello
String.replaceAll()
接受正则表达式作为其第一个参数,这将提供所需的灵活性。查看此
String s ="[";
String q ="]";
String w = "";
String output=w.replace("[", w);
output=output.replace("]", w);
尝试使用java.lang.String中的方法
String s = "[";
String q = "]";
String w = "{";
String as = "sdada[sad]sdas";
String newstring = as.replace(s, w).replace(q,w);
Toast.makeText(_activity,newstring,Toast.LENGTH_LONG).show();
这是您的工作代码…如果您继续阅读,您将看到它以两个char对象作为参数。“s&&q”和“s | | q”这两个结构都是非法的和胡言乱语的。想想看:逻辑操作(“foo”&&“bar”)会返回什么
这样做:
output = String.valueOf(profile.get("text")).replace(q, w).replace(s, w);
这将产生您想要的结果。这与以前一样。只是更换s,而不是更换QQ。您更换了吗?它看起来是一样的,我已经从中删除了这一行-String.valueOf(profile.get(“text”))嗯。我需要那一点lol。这就是我从json feed中获取文本的地方。我有一天大脑说不,我呆在床上,我明白了。&&是在我尝试了百万次和其他方法之后的最后手段,但是]没有被删除你是复制了发布的代码还是编辑了新的源代码?我刚刚重新运行了它,它肯定会同时替换
[
和]
。必须对[
和]
进行转义,因为它们是正则表达式中的特殊字符。