正则表达式
个人学习记录
ihh2021
一切深厚的东西都源自最微小的积累。
展开
-
1、正则表达式-元字符
目录一、正则表达式初识1、 正则表达式是使用单个字符串来描述、匹配一些列符合某个语法规则的字符串2、 使用场景(1)、批量提取、替换有规律的字符串(2)、在各种高级的文本编辑器中使用(3)、在各类的办公软件(Office等)中使用(4)、用户输入的合法性验证(IP地址,特殊订单号的要求等)(5)、模板引擎的标签库开发(6)、网络爬虫(抓取机器人)的开发(7)、批量的问吧高效处理3、 Windows系统命令行中最简单的正则表达式(1)、 ...原创 2020-08-15 18:51:19 · 386 阅读 · 0 评论 -
2、正则表达式-转义及重复
目录一、 字符转义1、 在正则表达式用,有一些关键字如元字符 . * ?等,假如在正则表达式中直接写入这些字符,计算机认为这正则表达式的元字符,假如需要再字符串中找到这些字符,把它当成普通字符而不是正则表达式的一部分,则需要用到转义。2、 字符串:how old are you...?假如想匹配old,正则表达式直接写old即可3、 假如想匹配 .正则表达式不能直接像匹配old一样直接输入 . 因为 . 是样字符,表示匹配除换行外的所有...原创 2020-08-15 18:52:17 · 1014 阅读 · 0 评论 -
3、正则表达式分组和贪婪与懒惰
一、分组的简单1、 将子表达式做成子集2、 使用()进行分组3、 方便match的字符串进行划分4、 简单例子:(\d{1,3}\.){3}\d{1,3}解析:这是一个匹配IP地址的表达式(\d{1,3}\.)表示一个分组,用()括起来{3}表示上面的分组要出现3次5、 分组命名(?<groupname>exp)Exp就是写政治表达式的,groupname是给它命名。6、 (?:exp) 匹配exp正则表达式,不不过匹配的文本,也不给此分组分配分号...原创 2020-08-15 18:52:57 · 196 阅读 · 0 评论 -
4、简单的网络爬虫例子
1、 在百度输入JavaScript,点击搜索,把搜索出来的标题,通过正则表达式找到这些标题。提取效果图:具体实现方法:1、 搜索口,在浏览器的空白地方右键,查看页面源码,并把源码拷贝到RegexBuddy 工具中,注:完整页面源码放在文末2、 分析规律:(黄色区域是随便找的一个小结构,里面是我们要找的标题百度百科)<div class="result-op c-container xpath-log" srcid="1547" id="1" tpl="bk_pol..原创 2020-08-15 18:55:04 · 459 阅读 · 0 评论 -
5、正则表达式高阶功能
反向引用定义:反向引用的作用通常是用来查找或限定重复、查找或限定指定标识配对出现,反向引用需要使用到分组,分组就是使用()括起来的部分为一个整体,在进行分组匹配时的原则是:由外向内,由左向右\1:表示的是引用第一次匹配到的()括起来的部分\2:表示的是引用第二次匹配到的()括起来的部分例子:下面两个单词,要报这两个单词匹配当成一个结果输出taobao taobao匹配单个单词,这里只能匹配到一个taobao后加一个空格由于重复,可以使用反向引用,而反向引用一定要跟分组一...原创 2020-08-15 18:56:50 · 207 阅读 · 0 评论 -
6、正则表达式与.Net等高级语言联合编程
从《4、简单的网络爬虫例子.docx》可以得出,最终的正则表达式为:<div\s+class="(result|result-op)\s+.*?<a.*?>(?<标题>.*?)</a>得到的结果是:现在需要把这个用vb.net语言实现这个功能点击使用,并选择对应的高级语言把相关的拷贝到工程中:Imports System.Text.RegularExpressionsPublic Class Form1 Priva...原创 2020-08-15 18:57:37 · 158 阅读 · 0 评论