我曾经在php中构建了一个程序,它使用非常特定的正则表达式来匹配链接,但是这种模式似乎不适用于java,我试图找到相当于java的
"~http://(bit.ly|t.co)~"
在php中,这会匹配http://t.co/UURRNlrK和http://bit.ly/AenG5W之类的链接,这与java相当吗?
答案 0 :(得分:1)
http://(bit\.ly|t\.co)/\w*
我认为这个结果与上面的结果相同
答案 1 :(得分:1)
我认为你在寻找
String str = "http://t.co/UURRNlrK";
String p = "(http://(t\.co|bit\.ly).*)";
Pattern pattern = Pattern.compile(p);
Matcher matcher = pattern.matcher(str);
if(matcher.find())
System.out.println(matcher.group(0));
输出= http://t.co/UURRNlrK
如果str = "http://bit.ly/AenG5W"
输出= http://bit.ly/AenG5W
这是一个很好的Regex Tutorial for java。
答案 2 :(得分:0)
我试过了:
String str = "http://bit.ly/asdfsd";
if(str.matches("http://(bit\.ly|t\.co).+")){
System.out.println("hurray");
}