zoukankan      html  css  js  c++  java
  • 正则表达式入门

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

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

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

    ^       代表一行的开始
    $       代表一行的结束
    […]    正则表达式结构体,“匹配列出的任意字符”
    -           连字符,表示范围,[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

  • 相关阅读:
    Educational Codeforces Round 10 C. Foe Pairs 水题
    Educational Codeforces Round 10 B. z-sort 构造
    CDOJ 1048 Bob's vector 三分
    Educational Codeforces Round 10 A. Gabriel and Caterpillar 模拟
    第14届电子科大初赛民间盗版部分题目题解
    HDU 5654 xiaoxin and his watermelon candy 离线树状数组 区间不同数的个数
    HDU 5653 Bomber Man wants to bomb an Array. dp
    HDU 5652 India and China Origins 二分+并查集
    HDU 5651 xiaoxin juju needs help 数学
    HDU 5650 so easy 数学
  • 原文地址:https://www.cnblogs.com/Aaxuan/p/6025195.html
Copyright © 2011-2022 走看看