美文网首页收藏
正则匹配URL链接

正则匹配URL链接

作者: 小楼听冬雨 | 来源:发表于2016-11-08 11:23 被阅读3063次

在编写正则之前,需要罗列出所有可能存在的情况

协议, 分别有 https,http,ftp 出现的次数是 0-1 次

https://
http://
ftp://
无协议开头

规则 :(((http|ftp|https)://)?)

知识点 :

  1. | 或 匹配左或者右 都为 True
  2. () 表达式中有几个()就有几个相应的匹配字符串。
  3. ? 匹配模式是非贪婪的,对于字符串 "oooo",'o+?' 将匹配单个 "o",而 'o+' 将匹配所有 'o'。

Host 也就是域名

123.com
adc.com
adc.net

规则:([a-zA-Z0-9._-]*)
知识点:

  1. [] 指定范围 a-z 会匹配 a 到 z 之间的字符,同理 A-Z 是大写的字幕, 0-9是数字
  2. \\ 因为匹配的 . 是正则里面的关键字,需要转义 , 反斜杠的作用就是转义,也就是将后面的字符将不作为关键字执行
  3. * 匹配前面的子表达式零次或多次

匹配端口

:8080

规则:(:[0-9]{1,4})*
知识点:

  1. {n} 匹配前面的表达式指定 n 次
  2. {n,} 匹配前面的表达式不少于 n 次
  3. {n,m} n <= m 匹配前面的表达式至少大于 M 次 ,不能小于 n 次

匹配参数

?wd=a&rsv_spt=1&issp=1&rsv_bp=0&ie=utf-8&tn=baiduhome_pg&inputT=1236

规则:/[a-zA-Z0-9&%_./-~-]*

知识点:

  1. \-~ 匹配ascii码里面的从\到~的字符

最终表达式:(((http|ftp|https)://)?)([a-zA-Z0-9.-])(:[0-9]{1,4})/[a-zA-Z0-9&%./-~-]*

相关文章

网友评论

本文标题:正则匹配URL链接

本文链接:https://www.haomeiwen.com/subject/takguttx.html