文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Java URL 正则表达式(转载)

Java URL 正则表达式(转载)

时间:2010-10-12  来源:ckanhw

// url正则

为了避免与字符串转义,要将一个\写成\\,如\d写成\\d

如"[,\\s]+"匹配"a,b c"

  1. import java.util.regex.Matcher;  
  2. import java.util.regex.Pattern;  
  3.   
  4. public class RegularExpressionTest {  
  5.      
  6.   
  7.     public static void main(String[] args) {  
  8.     
  9.         Pattern p = Pattern.compile("^(http|www|ftp|)?(://)?(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*((:\\d+)?)(/(\\w+(-\\w+)*))*(\\.?(\\w)*)(\\?)?(((\\w*%)*(\\w*\\?)*(\\w*:)*(\\w*\\+)*(\\w*\\.)*(\\w*&)*(\\w*-)*(\\w*=)*(\\w*%)*(\\w*\\?)*(\\w*:)*(\\w*\\+)*(\\w*\\.)*(\\w*&)*(\\w*-)*(\\w*=)*)*(\\w*)*)$",Pattern.CASE_INSENSITIVE );   
  10.         Matcher m = p.matcher("http://www.qqgb.com/Program/Java/JavaFAQ/JavaJ2SE/Program_146959.html");    
  11.           
  12.           if(m.find()){  
  13.               System.out.println(m.group());  
  14.           }  
  15.           
  16.           m = p.matcher("http://baike.baidu.com/view/230199.htm?fr=ala0_1");  
  17.           
  18.           if(m.find()){  
  19.               System.out.println(m.group());  
  20.           }  
  21.             
  22.           m = p.matcher("http://www.google.cn/gwt/x?u=http%3A%2F%2Fanotherbug.blog.chinajavaworld.com%2Fentry%2F4550%2F0%2F&btnGo=Go&source=wax&ie=UTF-8&oe=UTF-8");  
  23.               
  24.           if(m.find()){  
  25.               System.out.println(m.group());  
  26.           }  
  27.             
  28.           m = p.matcher("http://zh.wikipedia.org:80/wiki/Special:Search?search=tielu&go=Go");  
  29.           
  30.           if(m.find()){  
  31.               System.out.println(m.group());  
  32.           }         
  33.             
  34.     }  
  35.   
  36. }  
import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegularExpressionTest { public static void main(String[] args) { Pattern p = Pattern.compile("^(http|www|ftp|)?(://)?(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*((:\\d+)?)(/(\\w+(-\\w+)*))*(\\.?(\\w)*)(\\?)?(((\\w*%)*(\\w*\\?)*(\\w*:)*(\\w*\\+)*(\\w*\\.)*(\\w*&)*(\\w*-)*(\\w*=)*(\\w*%)*(\\w*\\?)*(\\w*:)*(\\w*\\+)*(\\w*\\.)*(\\w*&)*(\\w*-)*(\\w*=)*)*(\\w*)*)$",Pattern.CASE_INSENSITIVE ); Matcher m = p.matcher("http://www.qqgb.com/Program/Java/JavaFAQ/JavaJ2SE/Program_146959.html"); if(m.find()){ System.out.println(m.group()); } m = p.matcher("http://baike.baidu.com/view/230199.htm?fr=ala0_1"); if(m.find()){ System.out.println(m.group()); } m = p.matcher("http://www.google.cn/gwt/x?u=http%3A%2F%2Fanotherbug.blog.chinajavaworld.com%2Fentry%2F4550%2F0%2F&btnGo=Go&source=wax&ie=UTF-8&oe=UTF-8"); if(m.find()){ System.out.println(m.group()); } m = p.matcher("http://zh.wikipedia.org:80/wiki/Special:Search?search=tielu&go=Go"); if(m.find()){ System.out.println(m.group()); } } }

运行结果:

http://www.qqgb.com/Program/Java/JavaFAQ/JavaJ2SE/Program_146959.html
http://baike.baidu.com/view/230199.htm?fr=ala0_1
http://www.google.cn/gwt/x?u=http%3A%2F%2Fanotherbug.blog.chinajavaworld.com%2Fentry%2F4550%2F0%2F&btnGo=Go&source=wax&ie=UTF-8&oe=UTF-8
http://zh.wikipedia.org:80/wiki/Special:Search?search=tielu&go=Go

说明这几种类型的都可以识别。 

      //其他Java正则

      01、"^\\d+$"  //非负整数(正整数 + 0)
  02、"^[0-9]*[1-9][0-9]*$"  //正整数
  03、"^((-\\d+)|(0+))$"  //非正整数(负整数 + 0)
  04、"^-[0-9]*[1-9][0-9]*$"  //负整数
  05、"^-?\\d+$"    //整数

  06、"^\\d+(\\.\\d+)?$"  //非负浮点数(正浮点数 + 0)
  07、"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"  //正浮点数
  08、"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$"  //非正浮点数(负浮点数 + 0)
  09、"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"  //负浮点数
  10、"^(-?\\d+)(\\.\\d+)?$"  //浮点数

  11、"^[A-Za-z]+$"  //由26个英文字母组成的字符串
  12、"^[A-Z]+$"  //由26个英文字母的大写组成的字符串
  13、"^[a-z]+$"  //由26个英文字母的小写组成的字符串
  14、"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串
  15、"^\\w+$"  //由数字、26个英文字母或者下划线组成的字符串

  16、"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"    //email地址

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载