Java中的拆分文本

Java中的拆分文本,java,split,Java,Split,输入文本: inptext = "inp1(A, Var1), inp1(B,Var1)" 预期产出: optext = "inp1(A, Var1)", "inp1(B,Var1)" 代码: 电流输出: inp1(A Var1) . . optext = "inp1(A", "Var1)" 解释当前输出: inp1(A Var1) . . optext = "inp1(A", "Var1)" 请建议我更正此问题。您可以使用Regexlookahead来实现此目的,例如: Strin

输入文本:

inptext = "inp1(A, Var1), inp1(B,Var1)"
预期产出:

optext = "inp1(A, Var1)", "inp1(B,Var1)"
代码:

电流输出:

inp1(A
Var1)
.
.
optext = "inp1(A", "Var1)"
解释当前输出:

inp1(A
Var1)
.
.
optext = "inp1(A", "Var1)"

请建议我更正此问题。

您可以使用
Regex
lookahead来实现此目的,例如:

String inptext = "inp1(A, Var1), inp1(B,Var1)";
String[] tokens = inptext.split("(?<=\\)),\\s");
for(String token : tokens){
    System.out.println(token);
}
String inptext=“inp1(A,Var1),inp1(B,Var1)”;

String[]tokens=inptext.split((?您可以使用
Regex
lookahead来实现这一点,例如:

String inptext = "inp1(A, Var1), inp1(B,Var1)";
String[] tokens = inptext.split("(?<=\\)),\\s");
for(String token : tokens){
    System.out.println(token);
}
String inptext=“inp1(A,Var1),inp1(B,Var1)”;
String[]tokens=inptext.split((?您可以组合并检索所需的数据

String inptext = "inp1(A, Var1), inp1(B,Var1)";
String firstResult = inptext.substring(0,inptext.lastIndexOf(", "));
String secondResult = inptext.substring(inptext.lastIndexOf(", ")).replace(", ","");
您可以组合和来检索所需的数据

String inptext = "inp1(A, Var1), inp1(B,Var1)";
String firstResult = inptext.substring(0,inptext.lastIndexOf(", "));
String secondResult = inptext.substring(inptext.lastIndexOf(", ")).replace(", ","");

如果输入“like inp1”中逗号后有空格,则可以使用:

String inptext = "inp1(A, Var1), inp1(B,Var1)";
        String[] tmp = inptext.split("\\), ");
        for (String a : tmp) {
            if (!a.substring(a.length()-1).equals(")"))
                a += ")";
            System.out.println(a);

        }

如果输入“like inp1”中逗号后有空格,则可以使用:

String inptext = "inp1(A, Var1), inp1(B,Var1)";
        String[] tmp = inptext.split("\\), ");
        for (String a : tmp) {
            if (!a.substring(a.length()-1).equals(")"))
                a += ")";
            System.out.println(a);

        }

您可以使用不在
()
之间的
进行拆分,因此可以使用此正则表达式
,(?![^(]*\)

输出

[inp1(A, Var1),  inp1(B,Var1)]

您可以使用不在
()
之间的
进行拆分,因此可以使用此正则表达式
,(?![^(]*\)

输出

[inp1(A, Var1),  inp1(B,Var1)]