我正在尝试从文件中读取的示例Url 我必须在之前解析包含转义字符的URL: 例如https://www.sample.co.in:8080? 或http://www.sample.co.in
可悲的是我写的正则表达式
Regex = \w*\\:.*
有助于解析第二个例子。无论我在哪里得到:那应该有一个' \#39;的前缀。如果我有一个像这样的字符串http:\ www.google.com它不应该通过。 我正在尝试从日志文件中提取文本。
答案 0 :(得分:1)
如果您只想验证网址,那么其中一个已经有很多好的答案
您可以尝试这样进行网址验证
String lRegex = "^(https?|ftp|file)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]";
另一方面,如果你想从网址获取属性,请试试这个
URL aURL = new URL("https:/www.sample.co.in:8080");
System.out.println("protocol = " + aURL.getProtocol());
System.out.println("authority = " + aURL.getAuthority());
System.out.println("host = " + aURL.getHost());
System.out.println("port = " + aURL.getPort());
答案 1 :(得分:0)
在通过各种引用查看之后,我设法构建了我正在寻找的正则表达式。
String regex = "(query=.*?(?<!\\\\):)+.*?";
Pattern PATTERN = Pattern.compile(regex);
String notvalue = "query=https\\://www.localhost.com\\:80";
String passvalue = "query=https://www.localhost.com\\:80";
谢谢大家。 :) 当我们提供不应解析的错误URL时,返回true。