正则表达式入门

最近要帮别人下载电影,但是只能找到种子(你懂得)所以就想写一个爬虫来爬磁力链接,所以去找了些书来看,

同时在这里写点笔记,避免以后自己忘掉也给后来的人留下一点资料。

 

我只做了一点微小的工作 :)

 

^       代表一行的开始
$       代表一行的结束
[…]    正则表达式结构体,“匹配列出的任意字符”
-           连字符,表示范围,[0-9][a-z],只有在字符组内部,连字符才是连字符,如果出现在开头,也代表普通字符。
[^…]   匹配未列出的字符,表示排除,“匹配未列出的字符”
.        匹配任意字符,在字符组中表示普通字符
|       “或” 括号划定范围,gr(a|e)y,在表达式中是普通字符
?    代表可选项,只作用于之前紧邻的元素,无论是否出现匹配都会成功,次数上限1
+    代表之前紧邻的元素出现一次或多次,无法匹配将会失败,最低出现一次
*    代表之前紧邻的元素出现任意多次或不出现,不会失败,
\    转义字符,即让某些元字符变成普通意义的

匹配引号内字符串  "[^"]*"
匹配美元金额  \$[0-9]+(\.[0-9][0-9])?
匹配URL  \<http://[-a-z0-9_.:]+/[-a-z0-9_.:@&?=+.!/~*%$]*\.html?\>
匹配时间  (1[012]|[1-9]):[0-5][0-9]
24小时制  [01]?[0-9]|2[0-3]

这些是在猫头鹰书上看到的,还有蝙蝠书也看了一下,但我觉得可能不适合我,因为我比较考虑 C# 和 JS 里用的。

感觉太老而且不是很懂,接下来看了邮电出版社的正则表达式必知必会,觉得这本要比蝙蝠书和猫头鹰书好的多。

 

略过上面那些又有下面这些元字符

[\b]    回退并删除一个字符,即backspace键

\f    换页符
\n    换行符
\r    回车符,\r\n \n\n
\t    制表符
\v    垂直制表符
\s    任何一个空白字符等价于[\f\n\r\t\v]
\S    任何一个非空白字符等价于[^\f\n\r\t\v]
\d    任何一个数字等价于[0-9]
\D    任何一个非数字等价于[^0-9]
\w    任何一个字母数字字符或下划线字符等价于[a-zA-Z0-9_]
\W    任何一个非字母数字字符或下划线字符等价于[^a-zA-Z0-9_]
{最大值,最小值}    控制匹配次数
+? *? {n, }?    非贪婪模式的次数匹配,“匹配尽可能少的字符”

 

 

后面还有三章吧,感觉有些复杂,目前的这些应该已经够用了,所以就没有看。

如果想深入学习的话,还是推荐看正则表达式必知必会,相对的简单易懂一些。

 

收集的正则:

 

匹配<img src>图片地址  <img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>

出处:http://www.cnblogs.com/08shiyan/archive/2011/09/01/2161741.html

 

匹配<script>标签  <script[^>]*?>.*?</script>

出处:http://www.cnblogs.com/08shiyan/archive/2011/09/28/2194682.html

 

部分正则:http://www.cnblogs.com/08shiyan/archive/2011/09/28/2194682.html

posted @ 2016-11-03 08:29  Aaxuan  阅读(371)  评论(0编辑  收藏  举报