java 使用正则表达式如何匹配 href="xxxxxx",就是要href整个字符串
3个回答
展开全部
href 这几个字要不要? 如果只是要取出" "中的字符串的话,可以这样:
import java.util.regex.*;
public class Test {
public static void main(String[] args) {
String ptn = ".*href=\"(.*)\"";
Pattern p = Pattern.compile(ptn, Pattern.DOTALL);
String s = "href=\"1alkjdflkajdfjalkdfj1\""; // \" 转义 ,表示"
Matcher m = p.matcher(s);
if (m.find()) {
System.out.println(m.group(1));
} else {
System.out.println("not match");
}
}
}
更多追问追答
追问
要
而且单双引号的都要
例如:href="xxxxxx"或href='xxxxxxx'
追答
那你就在前面加上href这几个字符
展开全部
List<String> hrefList = new ArrayList<String>();
// Pattern compile = Pattern.compile("<a .*?\\s+href=[\"'](http.+?)[\"']\\s*.*?>.*?</a>");
Pattern compile = Pattern.compile("<a .*?\\s+href=[\"'](http[^>^\"^']*).*?</a>");
Matcher matcher = compile.matcher(str);
while (matcher.find()) {
hrefList.add(matcher.group(1));
}
// Pattern compile = Pattern.compile("<a .*?\\s+href=[\"'](http.+?)[\"']\\s*.*?>.*?</a>");
Pattern compile = Pattern.compile("<a .*?\\s+href=[\"'](http[^>^\"^']*).*?</a>");
Matcher matcher = compile.matcher(str);
while (matcher.find()) {
hrefList.add(matcher.group(1));
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
String reg = "";
boolean flag = href.matchs(reg);
boolean flag = href.matchs(reg);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询