拆分<;中包含的字符串&燃气轮机;符号,并删除Java中的符号

拆分<;中包含的字符串&燃气轮机;符号,并删除Java中的符号,java,string,split,Java,String,Split,我有一根绳子 String str = "<Java><SQL>"; 此外,我还希望使其具有迭代性,即每次我有一个新字符串时,它都应该删除并附加前一个字符串[]中的不同部分 我查看了不同的方法,如split()方法或matches()方法,但我不能这样做。基本上是wyxz答案 str1.substring(1, str1.length() - 1).replace("><", ", "). str1.substring(1,str1.length()-1)

我有一根绳子

String str = "<Java><SQL>";
此外,我还希望使其具有迭代性,即每次我有一个新字符串时,它都应该删除并附加前一个字符串[]中的不同部分

我查看了不同的方法,如split()方法或matches()方法,但我不能这样做。

基本上是wyxz答案

str1.substring(1, str1.length() - 1).replace("><", ", ").

str1.substring(1,str1.length()-1)。替换(“>您需要做两件事:

  • 删除尾随的

  • >上拆分尝试先切断外部
    ,然后在
    >上拆分您查看过扫描仪类吗?()是否希望能够转义
    字符,以便它们可以包含在所附文本中?是否希望处理不匹配的尖括号,如果是,如何处理?str.substring(1,str.length()-1)。替换(“>尝试执行此操作时,错误显示为“类型列表不是泛型的;不能在“公共静态列表拆分(中的最终字符串)”和“最终列表myStrings=new LinkedList();”中使用参数对其进行参数化。您使用的是Java 6。您需要
    =new LinkedList();
    。解决了问题!我导入了java.util.List。之前我导入了java.awt.List。两者都有List方法,但前者是泛型类型,而awt.List用作显示元素。谢谢帮助!!
    str1.substring(1, str1.length() - 1).replace("><", ", ").
    
    final String[] split = "<Java><SQL>".replaceAll("(?:^<)|(?:>$)", "").split("><");
    
    public static void main(final String args[]) {
        final List<String> myStrings = new LinkedList<>();
        final String s = "<Java><SQL>";
        myStrings.addAll(split(s));
        System.out.println(myStrings);
        myStrings.addAll(split(s));
        System.out.println(myStrings);
        myStrings.addAll(split(s));
        System.out.println(myStrings);
        myStrings.addAll(split(s));
        System.out.println(myStrings);
    }
    
    public static List<String> split(final String in) {
        return Arrays.asList(in.replaceAll("(?:^<)|(?:>$)", "").split("><"));
    }
    
    [Java, SQL]
    [Java, SQL, Java, SQL]
    [Java, SQL, Java, SQL, Java, SQL]
    [Java, SQL, Java, SQL, Java, SQL, Java, SQL]