永发信息网

java如何截取最近的两个字符串中的字符?

答案:1  悬赏:60  手机版
解决时间 2021-03-23 08:04
  • 提问者网友:聂風
  • 2021-03-22 09:36
意思就是有很多相同的“两个字符串”,比如说:
<前>aa<后>dsfsdfsdfsdaf<前>bb<后>
我想要让程序截取<前>和<后>之间的内容。输入aa bb...
好吧我语文是体育老师教的我说不清楚,但不要乱起来回答啊...
最佳答案
  • 五星知识达人网友:神鬼未生
  • 2021-03-22 10:50
public class Demo {
public static void main(String[] args) {
String temp = "<前>aa<后>dsfsdfsdfsdaf<前>bb<后>";
ArrayList<String> list = getResultArrays(temp);
for (String value : list)
System.out.println("value=" + value);
}

public static ArrayList<String> getResultArrays(String str) {
String tempStr = null;
String value = null;
int endIndex;
ArrayList<String> list = new ArrayList<String>();
Pattern p = Pattern.compile("<前>(.+?)<后>");// 设定匹配规则
Matcher m = p.matcher(str);// 与字符串匹配
while (m.find()) {
tempStr = m.group();
endIndex = tempStr.indexOf(">");// 终点
value = tempStr.substring(endIndex + 1, tempStr.lastIndexOf("<"));// 从第一个结束标识的末尾,到第二个开始标识,就是内容的主体
list.add(value);
}
return list;
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯