最近要帮别人下载电影,但是只能找到种子(你懂得)所以就想写一个爬虫来爬磁力链接,所以去找了些书来看,
同时在这里写点笔记,避免以后自己忘掉也给后来的人留下一点资料。
我只做了一点微小的工作 :)
^ 代表一行的开始
$ 代表一行的结束
[…] 正则表达式结构体,“匹配列出的任意字符”
- 连字符,表示范围,[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#.net和javaScript里用的。
感觉太老而且不是很懂,接下来看了邮电出版社的正则表达式必知必会
觉得这本要比蝙蝠书和猫头鹰书好的多。
略过上面那些又有下面这些元字符
[\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, }? 非贪婪模式的次数匹配,“匹配尽可能少的字符”
后面还有三章吧,感觉太复杂,懒得看了,这些应该已经够用了,所以就没有看
而且发现两本书中有些不一样的地方,
如果读者想学的话,还是推荐正则表达式必知必会,相对简单易懂一些。
自写正则:
匹配一对<script>标签 <?[^<]*</script> //会匹配之间的>,慎用
收集的精品正则:
匹配<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