我想将一些XML文本分成几部分:
xmlcontent = "<tagA>text1<tagB>text2</tagB></tagA>";
Run Code Online (Sandbox Code Playgroud)
在C#中使用
string[] splitedTexts = Regex.Split(xmlcontent, "(<.*?>)|(.+?(?=<|$))");
Run Code Online (Sandbox Code Playgroud)
结果是
splitedTexts = ["<tagA>", "text1", "<tagB>", "text2", "</tagB>", "</tagA>"]
Run Code Online (Sandbox Code Playgroud)
如何在Java中做到这一点?
我试过了
String[] splitedTexts = xmlcontent.split("(<.*?>)");
Run Code Online (Sandbox Code Playgroud)
但结果并不像我期待的那样.
用于split定义要拆分的分隔符的参数.你想在之前<和之后拆分,>因此你可以这样做:
String[] splitedTexts = xmlcontent.split("(?=<)|(?<=>)");
Run Code Online (Sandbox Code Playgroud)