从序列中删除所有两个按顺序排列的字母表,并保留至少一个不能删除更多组合的字母表
例如
XCDCDY -> XCDY > CD > empty (cant be transformed further)
DCBDE -> DCB > D (cant be transformed further)
请给出解决这个问题的任何建议或想法。无法思考如何以编程方式处理字母表序列。
可以使用replace from String方法,将要删除的字符串作为参数传递,并检查结果是否大于0,这意味着不可能进行后续转换。
这是一个例子,因为我不确定如何获得序列,但需要创建一个循环来获得要测试的下一个转换,然后为每个迭代调用isTransformable()方法。然后可以检查结果是否等于“Transformable”,并再次迭代循环。
public class StringTransformation {
public static void main(String[] args) {
String input = "abcdef";
String toBeRemoved = "cd";
System.out.println(isTransformable(input, toBeRemoved));
}
public static String isTransformable(String input, String toBeRemoved) {
if (input.replace(toBeRemoved, "").length() > 0) {
return "Transformable";
}
return "Can't be transformed further";
}
}
问题内容: 我想删除特殊字符,例如: 使用Java从String中获取。 问题答案: 这取决于你定义为特殊字符的内容,但是请尝试: 请注意,该^字符不能是列表中的第一个字符,因为你要么必须对其进行转义,否则将意味着“除这些字符外的任何字符”。 另一个注意事项:-字符必须是列表中的第一个或最后一个,否则你必须对其进行转义,否则它将定义一个范围(例如,表示“ 范围内的所有字符” )。 所以,为了保持一
问题内容: 我想从我的字符串中删除以下所有字符 “> [],-” 目前我正在这样做。但必须有一个更有效的方法 问题答案: 使用描述要替换的所有字符的正则表达式,以及替换与该正则表达式匹配的所有内容的方法: (编辑:实际上,我认为不应该转义。而且我忘记了将反斜杠加倍,因为它们会被解释两次:一次是由Java编译器,一次是由正则表达式引擎。)
问题内容: 我不知道如何从Java中的字符串中删除无效字符。我正在尝试删除不是数字,字母或()[]的所有字符。我怎样才能做到这一点? 谢谢 问题答案: Javadocs是您的朋友。正则表达式也是您的朋友。 编辑: siad,这仅适用于拉丁字母;您可以据此进行调整。可以用于表示“单词”字符(如果它适用于您的情况),尽管它包括在内。
使用扫描仪,我想读取char的索引,然后将其从字符串中删除。只有一个问题:如果char在字符串中出现多次,那么。替换()将删除所有这些字符。 例如,我想从字符串“纹理文本”中获取第一个“t”的索引,然后只删除那个“t”。然后我想得到第二个't'的索引,然后删除它。
为了在Java中访问字符串的各个字符,我们有。java中是否有任何内置函数来删除字符串的单个字符? 像这样的东西:
问题内容: 我使用的框架会不时返回格式错误的字符串,其中包含“空”字符。 例如,“ foobar”表示为:[,f,o,o,b,a,r] 第一个字符不是空格(’‘),因此System.out.printlin()将返回“ foobar”而不是“ foobar”。但是,String的长度是7,而不是6。显然,这使大多数String方法(等于,拆分,子字符串等)变得无用。有没有办法从字符串中删除空字符?