使用单词拆分字符串但将单词保留在每个数组索引中
Split string using word but keep the word in each array index
下面的代码,
String string = "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>";
String[] stringArray = string.split("<xml");
for ( String i : stringArray) {
System.out.println(i);
}
版画
attributes>some xml code</xml>
attributes>some xml code</xml>
attributes>some xml code</xml>
attributes>some xml code</xml>
但我想在每个数组索引中保留 <xml 单词,因此输出将是,
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
怎么样:
String string = "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>";
String strPattern = "<xml";
String[] stringArray = string.split(strPattern);
for ( String i : stringArray) {
System.out.println(strPattern + i);
}
稍微更改您的代码以使用正向后视。
String[] stringArray = string.split("(?<=</xml>)");
O/P :
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
我只能想到蛮力的方法:
String string = "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>";
String[] stringArray = string.split("<xml");
for (int i = 1; i < stringArray.length; i++) {
stringArray[i] = "<xml"+stringArray[i];
}
for ( String i : stringArray) {
System.out.println(i);
}
请注意,for (String element : stringArray)
在这里不起作用,因为它按值复制元素,而不是指向数组中元素的指针。
下面的代码,
String string = "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>";
String[] stringArray = string.split("<xml");
for ( String i : stringArray) {
System.out.println(i);
}
版画
attributes>some xml code</xml>
attributes>some xml code</xml>
attributes>some xml code</xml>
attributes>some xml code</xml>
但我想在每个数组索引中保留 <xml 单词,因此输出将是,
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
怎么样:
String string = "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>";
String strPattern = "<xml";
String[] stringArray = string.split(strPattern);
for ( String i : stringArray) {
System.out.println(strPattern + i);
}
稍微更改您的代码以使用正向后视。
String[] stringArray = string.split("(?<=</xml>)");
O/P :
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
<xml attributes>some xml code</xml>
我只能想到蛮力的方法:
String string = "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>"
+ "<xml attributes>some xml code</xml>";
String[] stringArray = string.split("<xml");
for (int i = 1; i < stringArray.length; i++) {
stringArray[i] = "<xml"+stringArray[i];
}
for ( String i : stringArray) {
System.out.println(i);
}
请注意,for (String element : stringArray)
在这里不起作用,因为它按值复制元素,而不是指向数组中元素的指针。