想象一下这个数组。
data[0] = <a href="/item/main.nhn?code=002530" class="tltle">Marine</a>
data[1] = <a href="/item/main.nhn?code=068270" class="tltle">Medic</a>
data[2] = <a href="/item/main.nhn?code=053800" class="tltle">Firebat</a>
我想将代码(002530,068270,053800)的属性带到code []数组中。 和纯文本(海洋,军医,Firebat)。 像这样:
code[0] = 002530
code[1] = 068270
code[2] = 053800
text[0] = Marine
text[1] = Medic
text[2] = Firebat
我该怎么做?我应该使用StringTokenizer吗?还是split()? 我不知道该怎么做。请帮我。谢谢。
答案 0 :(得分:0)
您可以使用正则表达式See this Voguella tutorial
".*code=([0-9]*).*>([A-Za-z]*)<.*"
这样的代码:
String[] array = new String[3];
array[0] = "<a href=\"/item/main.nhn?code=002530\" class=\"tltle\">Marine</a>";
array[1] = "<a href=\"/item/main.nhn?code=068270\" class=\"tltle\">Medic</a>";
array[2] = "<a href=\"/item/main.nhn?code=053800\" class=\"tltle\">Firebat</a>";
Pattern pattern = Pattern.compile(".*code=([0-9]*).*>([A-Za-z]*)<.*");
for (int i = 0; i < array.length; i++) {
String string = array[i];
Matcher ma = pattern.matcher(string);
System.out.println("Code " + i + ":" + ma.replaceFirst("$1"));
System.out.println("Text " + i + ":" + ma.replaceFirst("$2"));
}
中的工作示例
Obs:记得在你的琴弦中逃脱。