正则表达式

re模块

倾然丶 夕夏残阳落幕 提交于 2020-02-07 00:23:54
正则表达式 ​ 一组特殊符号组成的表达式,用于描述某种规则。该应用场景生活中随处可见。 ​ 例如:让有志青年过上体面的生活,这里面就由规则,即有志青年。 正则表达式的作用,以及使用场景 ​ 1.用于从字符串中匹配满足某种规则的内容,多数用于爬虫应用程序 ​ 2.判断字符串串内容是否满足某种规则,多用于严重用户输入。例如密码是否规范,手机号是否正确等 学习重点 ​ 正则是一堆特殊符号组成的,我们主要学习的就是这些特殊符号 元字符 描述 \ 将下一个字符标记符、或一个向后引用、或一个八进制转义符。例如,“\n”匹配\n。“\n”匹配换行符。序列“\”匹配“”而“(”则匹配“(”。即相当于多种编程语言中都有的“转义字符”的概念。 ^ 匹配输入字行首。如果设置了RegExp对象的Multiline属性,^也匹配“\n”或“\r”之后的位置。 $ 匹配输入行尾。如果设置了RegExp对象的Multiline属性,$也匹配“\n”或“\r”之前的位置。 * 匹配前面的子表达式任意次。例如,zo 能匹配“z”,也能匹配“zo”以及“zoo”。 等价于{0,}。 + 匹配前面的子表达式一次或多次(大于等于1次)。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,}。 { n } n 是一个非负整数。匹配确定的 n 次。例如,“o{2}”不能匹配“Bob”中的“o”

正则表达式 - 元字符

拥有回忆 提交于 2020-02-07 00:20:26
正则表达式 - 元字符 下表包含了元字符的完整列表以及它们在正则表达式上下文中的行为: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。 * 匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等价于{0,}。 + 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。 ? 匹配前面的子表达式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等价于 {0,1}。 {n} n 是一个非负整数。匹配确定的 n 次。例如,'o{2}' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的两个 o。 {n,} n 是一个非负整数。至少匹配n 次。例如,'o{2,}' 不能匹配 "Bob"

正则表达式-元字符

拥有回忆 提交于 2020-02-07 00:17:36
以前的笔记感觉没有这个 菜鸟教程 里面的东西描述得详细,直接拿过来了。讲到C#操作正则的时候回顾写一遍,再发布教程 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个 向后引用、或一个八进制转义符。例如,'n' 匹配字符 "n"。'\n' 匹配一个换行符。序列 '\\' 匹配 "\" 而 "\(" 则匹配 "("。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 '\n' 或 '\r' 之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 '\n' 或 '\r' 之前的位置。 * 匹配前面的子表达式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等价于{0,}。 + 匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。 ? 匹配前面的子表达式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 。? 等价于 {0,1}。 {n} n 是一个非负整数。匹配确定的 n 次。例如,'o{2}' 不能匹配 "Bob" 中的 'o',但是能匹配 "food" 中的两个 o。 {n,} n 是一个非负整数。至少匹配n 次。例如,'o{2,}' 不能匹配

正则表达式、常用的匹配总结

廉价感情. 提交于 2020-02-07 00:13:52
1.正则表达式:我的理解就是,记录文本规则的代码,我主要运用它在.net表单验证中。 2.学习正则表达是的工具下载链接:https://sourceforge.net/projects/regextester/ 3.工具使用说明: 4 . 正则表达式有多种不同的风格。下表是在PCRE中元字符及其在正则表达式上下文中的行为的一个完整列表: 字符 描述 \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个向后引用、或一个八进制转义符。例如,“ n ”匹配字符“ n ”。“ \n ”匹配一个换行符。序列“ \\ ”匹配“ \ ”而“ \( ”则匹配“ ( ”。 ^ 匹配输入字符串的开始位置。如果设置了RegExp对象的Multiline属性,^也匹配“ \n ”或“ \r ”之后的位置。 $ 匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性,$也匹配“ \n ”或“ \r ”之前的位置。 * 匹配前面的子表达式零次或多次。例如,zo*能匹配“ z ”以及“ zoo ”。*等价于{0,}。 + 匹配前面的子表达式一次或多次。例如,“ zo+ ”能匹配“ zo ”以及“ zoo ”,但不能匹配“ z ”。+等价于{1,}。 ? 匹配前面的子表达式零次或一次。例如,“ do(es)? ”可以匹配“ do ”或“ does ”中的“ do ”。?等价于{0,1}

正则表达式学习笔记

笑着哭i 提交于 2020-02-06 23:55:38
1. 引言 以前我们用 grep 在一个文件中找出包含某些字符串的行,比如在头文件中找出一个宏定义。其实 grep 还可以找出 符合某个模式(Pattern) 的一类字符串。例如找出所有符合 xxxxx@xxxx.xxx 模式的字符串(也就是email地址),要求x字符可以是字母、数字、下划线、小数点或减号,email地址的每一部分可以有一个或多个x字符,例如 abc.d@ef.com 、 1_2@987-6.54 ,当然符合这个模式的不全是合法的email地址,但至少可以做一次初步筛选,筛掉 a.b 、 c@d 等肯定不是email地址的字符串。再比如,找出所有符合 yyy.yyy.yyy.yyy 模式的字符串(也就是IP地址),要求y是0-9的数字,IP地址的每一部分可以有1-3个y字符。 如果要用 grep 查找一个模式,如何表示这个模式,这一类字符串,而不是一个特定的字符串呢?从这两个简单的例子可以看出,要表示一个模式至少应该包含以下信息: 字符类(Character Class) :如上例的x和y,它们在模式中表示一个字符,但是取值范围是一类字符中的任意一个。 数量限定符(Quantifier) : 邮件地址的每一部分可以有 一个或多个x字符,IP地址的每一部分可以有 1-3个y字符 各种字符类以及普通字符之间的位置关系:例如邮件地址分三部分,用普通字符 @ 和 . 隔开

javaScript正则表达式对象

寵の児 提交于 2020-02-06 23:15:16
javaScript之正则表达式对象 1. 简介 正则表达式(Regular Expression),又称规则表达式,计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。 javaScript中使用 RegExp 对象提供正则表达式的功能。 创建正则表达式有两种方式: 使用直接量 使用构造函数 // 使用直接量创建正则表达式,以"/"表示开始和结束 var regexp1 = /abc/ ; // 使用构造函数创建正则表达式 var regexp2 = new RegExp ( "abc" ) ; 上面两种写法都创建了一个内容为 abc 的正则表达式对象。但是通过直接量创建的正则表达式对象在javaScript引擎编译的时候就已经创建了,而通过构造函数创建的正则表达式对象是在运行时才创建的。 RegExp 构造函数还可以接受第二个参数,表示修饰符。 var regexp3 = new RegExp ( "abc" , "im" ) ; // 两者等价 var regexp4 = /abc/im ; 2. RegExp实例对象属性和方法 2.1 实例对象属性 正则表达式对象的实例属性分为两类: 与修饰符相关的属性 ignoreCase :返回布尔值,表示是否设置了 i 修饰符,只读。 global :返回布尔值,表示是否设置了 g 修饰符,只读。

Python面试一百题——字符串与正则表达式

你。 提交于 2020-02-06 20:11:21
目录 字符串格式化之模板字符串 使用fstring方式格式化字符串 字符串的基本操作 向字符串的format方法传递参数有几种方式 让字符串居中显示 连接列表中的元素值 用正则表达式判断字符串中是否包含日期 寻找字符串中的手机号 用正则表达式分别提取电话号的区号、电话号和分机号 用正则表达式查找字符串中所有的Email 用正则表达式格式化字符串中所有的浮点数 提取HTML页面中的URL 01.字符串格式化之模板字符串 格式化字符串的方式: %格式化 模板字符串 format方法 fstring # 模板字符串 # 通过Template对象封装,用 $ 放置一些占位符,并通过substitute方法用实际的值替换这些占位符 from string import Template template1 = Template ( '$s真棒,$s真厉害' ) # '$s真棒,$s真厉害' 就是模板字符串 print ( template1 . substitute ( s = '我' ) ) # 我真棒,我真厉害 print ( template1 . substitute ( s = '你' ) ) # 你真棒,你真厉害 template2 = Template ( '${h}ello world' ) # 用{}将占位符名称括起来,以便和其他单词区分 print ( template2

Nginx初探

試著忘記壹切 提交于 2020-02-06 16:21:10
nginx是一款轻量级的web服务器、反向代理服务器和电子邮件服务器,占有内存少,并发能力强。 本文将简单介绍如何安装、启动nginx,部署web项目,应用反向代理。 一、安装 可参考https://www.cnblogs.com/EasonJim/p/7806879.html 二、常用命令 nginx -s stop 快速关闭 nginx -s quit 等待当前请求执行完毕后关闭 nginx -s reload 重新加载配置 nginx -s reopen 重新打开日志(完成日志切割) 三、常用配置 参考https://blog.csdn.net/xyang81/article/details/51814787   3.1http简要配置     极简的情况下,http可以只配置server,即:      http { server {} server {} }     其他关于http的配置比如include(用于将外部文件的内容作为配置拷贝到配置文件中)、sendfile(是否启用内核复制)等,可参考上面提到的链接或ngnix官方文档。   3.2server简要配置     server的配置中比较重要的有三项:listen,server_name和location。     listen指令配置了虚拟主机监听的ip地址和端口,默认监听本机地址和80端口。    

python学习笔记第十六天------------网络编程之正则表达式概述

点点圈 提交于 2020-02-06 15:19:19
文章目录 1. 正则表达式概述 2. re模块操作 2.1 re模块的使用过程 2.2 re模块示例 3. 匹配单个字符 4. 匹配多个字符 5. 匹配开头结尾 6. 匹配分组 7. re模块的高级用法 7.1 search 7.2 findall 7.3 sub 将匹配到的数据进行替换 7.4 split 根据匹配进行切割字符串,并返回一个列表 8. 贪婪和非贪婪 9. r的作用 1. 正则表达式概述 场景1:在一个文件中,查找出itcast开头的语句 测试文件 itcast hello python itcast c++ itheima ios itheima php 场景:在一个文件中,找到含有itcast的语句 测试文件 hello itcast python www.itcast.cn c++ itheima ios itheima php 2. re模块操作 在Python中需要通过正则表达式对字符串进行匹配的时候,可以使用一个模块,名字为re 2.1 re模块的使用过程 #coding=utf-8 # 导入re模块 import re # 使用match方法进行匹配操作 result = re . match ( 正则表达式 , 要匹配的字符串 ) # 如果上一步匹配到数据的话,可以使用group方法来提取数据 result . group ( ) 2.2

正则表达式实践

与世无争的帅哥 提交于 2020-02-06 11:54:14
正则表达式在几乎所有语言中都可以使用,无论是前端的JavaScript、还是后端的Java、c#。他们都提供相应的接口/函数支持正则表达式。 很神奇的是:无论你大学选择哪一门计算机语言,都没有关于正则表达式的课程给你修,在你学会正则之前,你只能看着那些正则大师们,写了一串外星文似的字符串,替代了你用一大篇幅的if else代码来做一些数据校验。 既然喜欢,那就动手学呗,可当你百度出一一堆相关资料时,你发现无一不例外的枯燥至极,难以学习。 本文旨在用最通俗的语言讲述最枯燥的基本知识! # 正则基础知识点 1、元字符 万物皆有缘,正则也是如此,元字符是构造正则表达式的一种基本元素。 我们先来记几个常用的元字符: 元字符说明.匹配除换行符以外的任意字符w匹配字母或数字或下划线或汉字s匹配任意的空白符d匹配数字匹配单词的开始或结束^匹配字符串的开始$匹配字符串的结束 有了元字符之后,我们就可以利用这些元字符来写一些简单的正则表达式了, 比如: 匹配有abc开头的字符串:abc或者^abc 匹配8位数字的QQ号码:^dddddddd$ 匹配1开头11位数字的手机号码:^1dddddddddd$ 2、重复限定符 有了元字符就可以写不少的正则表达式了,但细心的你们可能会发现:别人写的正则简洁明了,而不理君写的正则一堆乱七八糟而且重复的元字符组成的。正则没提供办法处理这些重复的元字符吗?