正则表达式

python正则

安稳与你 提交于 2019-12-29 21:32:44
\d 匹配一个数字 \w 匹配一个字母或数字 . 匹配任意字符 * 表示任意个字符(包括0个), + 表示至少一个字符 ? 表示0个或1个字符 ^ 表示行的开头 $ 表示行的结束 \s 匹配一个空格(也包括Tab等空白符) \s+ 表示至少有一个空格 | A|B可以匹配A或B,所以(P|p)ython可以匹配'Python'或者'python'。 {n} 表示n个字符 {n,m} 表示n-m个字符 - 是特殊字符,在正则表达式中,要用'\'转义 [a-zA-Z\_][0-9a-zA-Z\_]{0, 19}更精确地限制了变量的长度是1-20个字符(前面1个字符+后面最多19个字符)。    s = 'ABC\\-001' # Python的字符串 # 对应的正则表达式字符串变成: # 'ABC\-001' 使用Python的 r 前缀,就不用考虑转义的问题了: s = r'ABC\-001' # Python的字符串 # 对应的正则表达式字符串不变: # 'ABC\-001' re.match(r'^\d{3}\-\d{3,8}$', '010-12345') 切分字符串 用正则表达式切分字符串比用固定的字符更灵活,请看正常的切分代码: >>> 'a b c'.split(' ') ['a', 'b', '', '', 'c'] 识别连续的空格,用正则表达式: >>> re

python基础之正则表达式

白昼怎懂夜的黑 提交于 2019-12-29 21:32:12
什么是正则表达式? 正则表达式并不仅仅是python的专利,几乎其他的语言都有正则表达式。就比如bash就有正则表达式命令--grep,个人感觉python中的正则表达式类似于 grep -o 正则表达式是用于处理 字符串 的强大工具,虽然效率上可能不高,但是功能强大! 正则表达式设定了一系列语法,比如说“ . ”表示任意单个字符,\d表示单个数字…… 通过组合这些规则我们可以形成一个pattern(模式)!凡是符合这个pattern的字符串,我们就认为它被匹配了,否则,则代表这个字符串是不合法的! 正则表达式的语法: 单个字符 具体说明 . 匹配任意字符(除了换行符\n) [] 匹配字符集,[0-1]表示数字,[a-z]表示小写字母 \ 转义字符,改变其后字符的原意 [^] 非 \d 与[0-9]功能相同,表示数字 \D 非数字,即[^\d] \s 空白字符即:[<空格>\t\r\f\n\v] \S 非空白字符 \w 单词字符[a-zA-Z0-9] \W 非单词字符[^\w] 上面表格中就是单个字符。当我们要匹配一个字母时,我们可以这样写:[a-z] .但是如果我们要匹配两个字符的时候该怎么办? 大家可能会想到这样:[a-z][a-z] 好,用这样的方法也可以。但是如果我们要匹配10个甚至数百个或者不限定字符的长度该怎么办?那我们就要用到数量词了。 数量词 说明 *

Python之re正则模块

人盡茶涼 提交于 2019-12-29 21:31:55
正则表达式可以帮助我们更好的描述复制的文本格式,可以更好地利用它们对文本数据进行检索、替换、提取和修改操作。 http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html http://docs.python.org/2.7/library/re.html#module-re 1、 re入门 第一步:先要引入有关正则表达式的包: #-*- coding: utf-8 -*- import re 第二步:使用指定的正则表达式构建一个正则表达式对象,下面正则是用来搜索长度为10的a-z的英文字母 #-*- coding: utf-8 -*- import re regex = re.compile(r'[a-z]{10}') 第三步:根据正则表达式指定数据中检索匹配项,如果匹配IsMatch方法就会返回true #!/usr/bin/env python26 #-*- coding:utf-8 -*- import re regex = re.compile(r'[a-z]{10}') m1 = re.match(regex,'1234567890') m2 = re.match(regex,'abcdefghij') if m1: print "m1 match" if m2: print "m2 match" 2

正则表达式

三世轮回 提交于 2019-12-29 20:10:15
一、正则表达式主要有下面几个方面作用: 1、注册页面判断用户输入的内容是否符合验证规则 2、从整体字符串中看是否包含指定的字符串 3、找到符合规则的字符串进行替换 二、常用方法 2.1preg_match() preg_match( r e g , reg, r e g , str,[$arr]) 第一个参数是你自己定义的正则表达式 第二个参数是原字符串 第三个参数是可选的 $str='hello world'; $reg='/o/'; $res=preg_match($reg,$str); //如果$res是1,代表从原字符串中能匹配到结果 //如果$res是0,代表匹配不到结果 if($res>0){ echo 'o在原字符串中存在'; }else{ echo 'o在原字符串中不存在'; } 如果传递了第三个参数 a r r , arr, a r r , arr就是你要查询匹配到的结果,而且是以数组的形式显示出来的 2.2preg_match_all() preg_match_all( r e g , reg, r e g , str,$arr) 2.3preg_replace() preg_replace($reg,’替换成什么’,’原字符串’)返回的结果就是替换好的字符串 三、元字符 1、\d 和[0-9]代表纯数字 1234567890 备注: [0-9]是0

正则表达式、grep、sed和awk

风流意气都作罢 提交于 2019-12-29 17:27:36
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 什么是正则 正则就是一串有规律的字符串 掌握好正则对于编写shell脚本有很大帮助 各种编程语言中都有正则,原理是一样的 本章将要学习grep/egrep、sed、awk grep grep [-cinvABC] 'word' filename //word可以用正则表达式 -c 行数 -i 不区分大小写 -n 显示行号 -v 取反 -r 遍历所有子目录 -A 后面跟数字,过滤出符合要求的行以及下面n行 -B 同上,过滤出符合要求的行以及上面n行 -C 同上,同时过滤出符合要求的行以及上下各n行 常见的正则表达式: . 表示任意一个字符 * 表示*前面那个字符有零个或者多个 {} 表示一个范围 + 表示匹配一个或多个+前面的字符 ? 表示?前面的字符有零个或者1个 | 表示或者 案例测试: [root@wangzb01 shelltest]# cp /etc/passwd ./test //拷贝passwd文件到当前文件夹 [root@wangzb01 shelltest]# grep -n 'root' test //结果显示行号 [root@wangzb01 shelltest]# grep -nv 'nologin' test //结果取反并显示行号 [root@wangzb01 shelltest]#

Jmeter接口测试

一个人想着一个人 提交于 2019-12-29 11:35:30
jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单。因为jmeter是java开发的,所以运行的时候必须先要安装jdk才可以。jmeter是免安装的,拿到安装包之后直接解压就可以使用,同时它在linux/windows/macos上都可以使用。   jmeter可以做接口测试和压力测试。其中接口测试的简单操作包括做http脚本(发get/post请求、加cookie、加header、加权限认证、上传文件)、做webservice脚本、参数化、断言、关联(正则表达式提取器和处理json-json path extractor)和jmeter操作数据库等等。 Jmeter-http接口脚本 一般分五个步骤:(1)添加线程组 (2)添加http请求 (3)在http请求中写入接入url、路径、请求方式和参数 (4)添加查看结果树 (5)调用接口、查看返回值 jmeter 发get请求 jmeter 发post请求 jmeter 添加cookie 需要在线程组里添加配置元件—HTTP Cookie 管理器 jmeter 添加header 需要在线程组里面添加配置元件—HTTP信息头管理器 jmeter 上传文件 jmeter 参数化 入参经常变化的话,则可以设置成一个变量,方便统一修改管理

Jmeter接口测试实例

。_饼干妹妹 提交于 2019-12-29 11:35:06
此文章作为工作中用到的jmeter接口测试相关内容简述,方便日后查阅参考,如有理解描述有误之处,欢迎指出。 首先Jmeter环境准备网上有很多教程,在此不多做赘述; 1.接口简述 接口可理解为从客户端到服务器的通道,客户端发送请求到服务器是通过接口实现的; 2.抓包 在无接口文档或文档描述清晰度不够,验证请求入参及相应信息时,web端可直接在浏览器使用F12查看network信息;需勾选Presever log选项;抓取页面所有的HTTP、HTTPS的请求;pc客户端或app可借助Charles、fiddle等相关抓包工具获取相应信息; 3.接口测试实例 以登录为例,输入用户名、密码,完成登录,跳转首页 测试过程中有些数据经常发生变化,如登录后需要验证状态sessionID或token,测试时就需通过关联(第二个请求需要的参数需要从第一个请求返回数据中获取)继续后续测试,不同用户或不同时间相应值也不同,也涉及 1⃣️jmeter测试计划中(以汉化版讲解)创建线程组 PS:线程组中可以创建多个请求 2⃣️线程组右键->添加->Sampler->HTTP请求(登录页) 。配置相应登录页面信息,域名或IP、端口号、协议(HTTP、HTTPS)、方法(get、post等)、路径,添加参数名及相应值(账号、密码) PS:配置密码参数时,需按照实际项目需要,数值配置明文或秘文

前端学PHP之正则表达式基础语法

末鹿安然 提交于 2019-12-29 07:29:19
前面的话   正则表达式是用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式分割、匹配、查找及替换操作。在PHP中,正则表达式一般是由正规字符和一些特殊字符(类似于通配符)联合构成的一个文本模式的程序性描述。正则表达式有三个作用:1、匹配,也常常用于从字符串中析取信息;2、用新文本代替匹配文本;3、将一个字符串拆分为一组更小的信息块。本文将详细介绍PHP中的正则表达式基础语法   [注意]关于javascript的正则表达式的详细信息 移步至此 历史   在PHP中有两套正则表达式函数库,两者功能相似,只是执行效率略有差异:一套是由PCRE(Perl Compatible Regular Expression)库提供的,使用“preg_”为前缀命名的函数;另一套由POSIX(Portable Operating System Interface of Unix)扩展提供的,使用以“ereg_”为前缀命名的函数   PCRE来源于Perl语言,而Perl是对字符串操作功能最强大的语言之一,PHP的最初版本就是由Perl开发的产品。PCRE语法支持更多特性,比POSIX语法更强大   在PHP4之前,主要使用POSIX;而现在,则使用主流的PCRE   正则表达式作为一个匹配的模式,是由原子(普通字符,例如字符a到z)、特殊字符(元字符,例如*、+和?等)

re——正则表达式

感情迁移 提交于 2019-12-29 07:24:35
常用的表达式规则 '.' 默认匹配除\n之外的任意一个字符,若指定flag DOTALL,则匹配任意字符,包括换行 '^' 匹配字符开头,若指定flags MULTILINE,这种也可以匹配上(r"^a","\nabc\neee",flags=re.MULTILINE) '$' 匹配字符结尾, 若指定flags MULTILINE ,re.search('foo.$','foo1\nfoo2\n',re.MULTILINE).group() 会匹配到foo1 '*' 匹配*号前的字符0次或多次, re.search('a*','aaaabac') 结果'aaaa' '+' 匹配前一个字符1次或多次,re.findall("ab+","ab+cd+abb+bba") 结果['ab', 'abb'] '?' 匹配前一个字符1次或0次 ,re.search('b?','alex').group() 匹配b 0次 '{m}' 匹配前一个字符m次 ,re.search('b{3}','alexbbbs').group() 匹配到'bbb' '{n,m}' 匹配前一个字符n到m次,re.findall("ab{1,3}","abb abc abbcbbb") 结果'abb', 'ab', 'abb'] '|' 匹配|左或|右的字符,re.search("abc|ABC","ABCBabcCD"

python使用正则表达式(Regular Expression)超详细

╄→гoц情女王★ 提交于 2019-12-28 18:48:26
一、导入re库 python使用正则表达式要导入re库。 import re 在re库中。正则表达式通常被用来检索查找、替换那些符合某个模式(规则)的文本。 二、使用正则表达式步骤 1、寻找规律; 2、使用正则符号表示规律; 3、提取信息,如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。 三、正则表达式中常见的基本符号 1.点号“.” 一个点号可以代替除了换行符(\n)以外的任何一个字符,包括但不限于英文字母、数字、汉字、英文标点符号和中文标点符号。 2.星号“*” 一个星号可以表示它前面的一个子表达式(普通字符、另一个或几个正则表达式符号)0次到无限次。 3.问号“?” 问号表示它前面的子表达式0次或者1次。注意,这里的问号是英文问号。 4.反斜杠“\” 反斜杠在正则表达式里面不能单独使用,甚至在整个Python里都不能单独使用。反斜杠需要和其他的字符配合使用来把特殊符号变成普通符号,把普通符号变成特殊符号。如:“\n”。 5.数字“\d” 正则表达式里面使用“\d”来表示一位数字。再次强调一下,“\d”虽然是由反斜杠和字母d构成的,但是要把“\d”看成一个正则表达式符号整体。 6.小括号“()” 小括号可以把括号里面的内容提取出来。 四、常见的正则表达式举例 1. .*?(匹配所有内容) 例如:'<title>(.*?)</title>'