Java 如何用另一个索引上的另一个字符替换特定索引中的字符
下面的代码打印Java 如何用另一个索引上的另一个字符替换特定索引中的字符,java,str-replace,Java,Str Replace,下面的代码打印eleelde,但我希望它打印elcaalde public class ReverseExperiments3 { public static void main (String[] args) { String s= "alcaalde"; s=s.replace('a','e'); System.out.println(s); } } 我怎么做?在索引()中是否有类似replace char的函数 我想为I=0处的字符指
eleelde
,但我希望它打印elcaalde
public class ReverseExperiments3 {
public static void main (String[] args) {
String s= "alcaalde";
s=s.replace('a','e');
System.out.println(s);
}
}
我怎么做?在索引()
中是否有类似replace char的函数
我想为I=0处的字符指定I=6处字符的值,并打印单词elcaalde
public class ReverseExperiments3 {
public static void main (String[] args) {
String s= "alcaalde";
s=s.replace('a','e');
System.out.println(s);
}
}
在char数组中更改它:
char[] cs = s.toCharArray();
cs[0] = cs[6]; // For example.
s = new String(cs);
在char数组中更改它:
char[] cs = s.toCharArray();
cs[0] = cs[6]; // For example.
s = new String(cs);
您也可以在此处使用正则表达式替换:
String s = "alcaalde";
s = s.replaceFirst("(.)(.{6})(.)", "$3$2$1");
对于这个问题,@andy给出的答案可能是最好的。但是如果OP需要移动字符串,那么基于正则表达式的方法将使我们处于相当好的位置。您也可以在此处使用正则表达式替换:
String s = "alcaalde";
s = s.replaceFirst("(.)(.{6})(.)", "$3$2$1");
对于这个问题,@andy给出的答案可能是最好的。但是如果OP需要在字符串周围移动,那么基于正则表达式的方法将使我们处于一个相当好的位置。试试下面的代码:如果你想得到你想要的,它是第七个元素
试试这个代码:如果你想得到你想要的,它是第七元素
为什么replaceAll
,而不是replaceFirst
?@khelwood在这种特殊情况下,由于模式覆盖了整个字符串,我希望replaceFirst
和replaceAll
基本上做相同的事情。为什么replaceAll
,而不是replaceFirst
?@khelwood在这种特殊情况下,由于模式覆盖了整个字符串,我希望replaceFirst
和replaceAll
基本上做相同的事情。为了获得结果,它是第7个元素,因此s[7]。不管怎么说,你把它作为s[6]是对的,因为他要求它为了得到结果,它是第七元素,所以s[7]。不管怎样,你是对的,正如他所要求的那样