求问一个分割方法. -- 把特定字符之间的字符剥离出来.
条件:
<img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAOijjEUYRScD1ooooA//Z"><img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAOijjEUYRScD1ooooA//Z">
分离后想得到的结果:
String[] sArray={"jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAOijjEUYRScD1ooooA//Z","jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAOijjEUYRScD1ooooA//Z"};
求思路, 源码, 或者高效方法.
------解决方案--------------------
String btnstr="<img src="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAOijjEUYRScD1ooooA//Z">";
Pattern p=Pattern.compile("(?s)img src="data:image/(jpeg.*?)"");//这里最后一个\不会截取,因为输入字符串中其实本身就没有""
Matcher m=p.matcher(btnstr);
while(m.find()){
System.out.println(m.group(1));
}