Java twitter如何验证URL
多亏了这个答案。我一直在使用以下代码验证URL。只是最近新的Java twitter如何验证URL,java,regex,twitter,url-validation,Java,Regex,Twitter,Url Validation,多亏了这个答案。我一直在使用以下代码验证URL。只是最近新的域名有很多可能的选择。所以我想,如果twitter将其视为URL(发布推文时),我将使用相同的。。。可以这么说,遵循标准 我想知道twitter是如何验证URL的,有没有我可以使用twitter正在使用的库。请帮我解决这个常见的问题。非常感谢 public static List<String> extractUrls(String input) { List<String> result = new A
域名有很多可能的选择。所以我想,如果twitter将其视为URL(发布推文时),我将使用相同的。。。可以这么说,遵循标准
我想知道twitter是如何验证URL的,有没有我可以使用twitter正在使用的库。请帮我解决这个常见的问题。非常感谢
public static List<String> extractUrls(String input) {
List<String> result = new ArrayList<String>();
Pattern pattern = Pattern.compile(
"(\\s)+\\b(((ht|f)tp(s?)\\:\\/\\/|~\\/|\\/)|(www.)?)" +
"(\\w+:\\w+)?(([-\\w]+\\.)+(com|org|net|gov" +
"|mil|biz|info|mobi|name|aero|jobs|museum|club" +
"|travel|[a-z]{2}))(:[\\d]{1,5})?" +
"(((\\/([-\\w~!$+|.,=]|%[a-f\\d]{2})+)+|\\/)+|\\?|#)?" +
"((\\?([-\\w~!$+|.,*:]|%[a-f\\d{2}])+=?" +
"([-\\w~!$+|.,*:=]|%[a-f\\d]{2})*)" +
"(&(?:[-\\w~!$+|.,*:]|%[a-f\\d{2}])+=?" +
"([-\\w~!$+|.,*:=]|%[a-f\\d]{2})*)*)*" +
"(#([-\\w~!$+|.,*:=]|%[a-f\\d]{2})*)?\\b");
Matcher matcher = pattern.matcher(input);
while (matcher.find()) {
result.add(matcher.group());
}
return result;
}
公共静态列表提取URL(字符串输入){
列表结果=新建ArrayList();
Pattern=Pattern.compile(
“(\\s)+\\b(((ht|f)tp(s?\:\/\/\/\/)\/(www.)?)”+
“(\\w+:\\w+)([-\\w]+\\)+(com | org | net | gov”+
“| mil | biz | info | mobi | name | aero | jobs | museum | club”+
“|旅行|[a-z]{2}”)(:[\\d]{1,5})?”+
“((\\/([-\\w~!$+\;,=]\%[a-f\\d]{2})++\\/)+\\\
“(\\?([-\\w~!$+\,*:]\%[a-f\\d{2}])+=?”+
“([-\\w~!$+|,*:=]|%[a-f\\d]{2})*”)”+
“(&(?:[-\\w~!$+|,*:]|%[a-f\\d{2}])+=?”
“([-\\w~!$+|,*:=]|%[a-f\\d]{2})**)*)*”+
“(#([-\\w~!$+|,*:=]|%[a-f\\d]{2})*)?\\b”);
Matcher Matcher=pattern.Matcher(输入);
while(matcher.find()){
add(matcher.group());
}
返回结果;
}
Twitter公开了Twitter文本
库,该库有很多文本处理选项。这是相关的回购协议。如果您想在客户端执行此操作,可以使用前面提到的来自的代码,您可以使用Twitter文本库。如果您想验证URL,您可以使用TLD的官方列表-副本,谢谢您的回答。谢谢您提供的额外信息:)