为了在Java中访问字符串的各个字符,我们有String。字符(2)
。java中是否有任何内置函数来删除字符串的单个字符?
像这样的东西:
if(String.charAt(1) == String.charAt(2){
//I want to remove the individual character at index 2.
}
一种可能性:
String result = str.substring(0, index) + str.substring(index+1);
注意,结果是一个新字符串(以及两个中间字符串对象),因为Java中的字符串是不可变的。
您可以使用名为replace的Java字符串方法,该方法将用第二个参数替换与第一个参数匹配的所有字符:
String a = "Cool";
a = a.replace("o","");
您还可以使用可变的StringBuilder
类。
StringBuilder sb = new StringBuilder(inputString);
它有方法deleteCharat()
,以及许多其他的突变方法。
只需删除需要删除的字符,然后得到如下结果:
String resultString = sb.toString();
这样可以避免创建不必要的字符串对象。
问题内容: 为了访问Java中String的各个字符,我们有。是否有任何内置函数来删除Java中String的单个字符? 像这样: 问题答案: 你也可以使用可变的类。 它具有方法deleteCharAt(),以及许多其他mutator方法。 只需删除需要删除的字符,然后得到结果,如下所示: 这样可以避免创建不必要的字符串对象。
使用扫描仪,我想读取char的索引,然后将其从字符串中删除。只有一个问题:如果char在字符串中出现多次,那么。替换()将删除所有这些字符。 例如,我想从字符串“纹理文本”中获取第一个“t”的索引,然后只删除那个“t”。然后我想得到第二个't'的索引,然后删除它。
问题内容: 我想删除特殊字符,例如: 使用Java从String中获取。 问题答案: 这取决于你定义为特殊字符的内容,但是请尝试: 请注意,该^字符不能是列表中的第一个字符,因为你要么必须对其进行转义,否则将意味着“除这些字符外的任何字符”。 另一个注意事项:-字符必须是列表中的第一个或最后一个,否则你必须对其进行转义,否则它将定义一个范围(例如,表示“ 范围内的所有字符” )。 所以,为了保持一
问题内容: 我想从我的字符串中删除以下所有字符 “> [],-” 目前我正在这样做。但必须有一个更有效的方法 问题答案: 使用描述要替换的所有字符的正则表达式,以及替换与该正则表达式匹配的所有内容的方法: (编辑:实际上,我认为不应该转义。而且我忘记了将反斜杠加倍,因为它们会被解释两次:一次是由Java编译器,一次是由正则表达式引擎。)
问题内容: 我不知道如何从Java中的字符串中删除无效字符。我正在尝试删除不是数字,字母或()[]的所有字符。我怎样才能做到这一点? 谢谢 问题答案: Javadocs是您的朋友。正则表达式也是您的朋友。 编辑: siad,这仅适用于拉丁字母;您可以据此进行调整。可以用于表示“单词”字符(如果它适用于您的情况),尽管它包括在内。
问题内容: 删除字符串的前三个字符的最有效方法是什么? 例如: 问题答案: 只需使用子字符串:将返回