日期:2014-05-20  浏览次数:20565 次

问一个字符串分割的方法,不知道哪位有好办法呀
源代码如下

String str2 = "<?xml version=\"1.0\" encoding = \"GB2312\"?><11>1111</11><?xml version=\"1.0\" encoding = \"GB2312\"?><11>2222</11>";
String dataArg[] = str2.split("<?xml version=\"1.0\" encoding = \"GB2312\"?>"); 

System.out.println(dataArg.length);
System.out.println(str2);
System.out.println(dataArg[0]);



我就是想把这个字符串,分成这样两部份.可惜上面的源代码不行
"<?xml version=\"1.0\" encoding = \"GB2312\"?><11>1111</11>"

"<?xml version=\"1.0\" encoding = \"GB2312\"?><11>2222</11>"


哪位老大有什么好办法呀



------解决方案--------------------
<?xml version=\"1.0\" encoding = \"GB2312\"? >如果这个是一样的话,用substring+indexOf好了

split只能得到<11>1111</11>和<11>2222</11>
就是说"aaaaa,bbbbb".split(",")只能得到aaaaa和bbbbb
,号是不包括的

没记错吧
------解决方案--------------------
split

------解决方案--------------------
[code=Java][/code] String str = " <?xml version=\"1.0\" encoding = \"GB2312\"? > <11 >1111 </11 > <?xml version=\"1.0\" encoding = \"GB2312\"? > <11 >2222 </11 >";

String subStr = "<?xml version=\"1.0\" encoding = \"GB2312\"? >";

int index = str.indexOf(subStr,2);
String result = str.substring(1,index);
String result2 = str.substring(index+1);
System.out.println(result); 
System.out.println(result2); 



上面的只限于楼主的这种情况。
如果想通用的话,再加个while循环就好了。
------解决方案--------------------
Stringtokenizer