正则

python 正则表达

微笑、不失礼 提交于 2019-11-29 02:29:10
在线工具 可以用这个 在线测试工具 http://tool.chinaz.com/regex/ 来看你的正则表达式 正则表达式 正则,就是只和字符串相关。匹配‘1’就是去匹配‘1’,直接匹配就是了。 字符组:[字符组] 在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示。 字符分为很多类,比如数字,字母,标点符号等。 假如你现在要求一个位置“只能出现一个数字”,那么这个位置上的字符只能是0-9这10个数字。 字符组 正则 待 匹 配 字 符 匹配 结果 说明 [0123456789] 8 True 在一个字符组里枚举合法的所有字符,字符组里的任意一个字符和 “待匹配字符”相同都视为可以匹配 [0123456789] a False 由于字符组里没有‘a’这个字符,所以不能匹配 [0-9] 7 True 也可以用-表示范围,[0-9]和[0123456789]是一个意思 [a-z] s True 同样如果要匹配 所有小写字母,直接用[a-z]就可以了 [A-Z] B True [A-Z]表示所有的大写字母 [0-9a-fA-F E True 可以匹配数字,大小写形式的a~~f,用来验证16进制字符 字符: 元字符 匹配内容 . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线 \s 匹配任意的空白符 \d 匹配数字 \n 匹配一个换行符 \t

正则与re模块

99封情书 提交于 2019-11-29 02:24:17
一、正则表达式 在线测试工具 http://tool.chinaz.com/regex/ 1.字符组 在 同一个位置 可能出现的各种字符组成一个字符组,在正则表达中用[ ]表示 一个正则就是一条匹配规则,可以规定一次匹配字符的长度,字符组每次匹配一个长度为1的字符,例如:待匹配字符为:2a+ 使用字符组进行匹配时就会进行三次比较 正则 待匹配字段 匹配结果 说明 [0123456789] 5 5 在一个字符组里枚举所有合法的字符,待匹配字符与其中一个相同,即便匹配成功 [0123456789] 56 5和6 匹配个数为2 (见第二条说明) [0-9] 7 7 用-表示范围,[0-9]和[0123456789]规则相同 [a-z] h h 匹配所有的小写字母 [a-z] 7h h 匹配个数为1 [A-Z] B B 匹配所有的大写字母 [0-9a-dA-D] 1ecD 1、c和D 匹配个数为3 (该正则可以匹配十六进制字符) 2.字符 元字符 待匹配字符 匹配个数 匹配说明 . 1$,a 4 匹配除换行符以外的任意字符 \w _1w@ 3 匹配字母数字下划线 \W _1w@ 1 匹配非字母数字下划线 \s 匹配空白(空格、换行和tab) \S 匹配非空白 \d 匹配数字 \D 匹配非数字 \n 匹配一个换行符 \t 匹配一个制表符 \b a 2+ 4 匹配字符的开始或结束 ^

jmeter循环控制器和结果的正则提取

£可爱£侵袭症+ 提交于 2019-11-29 02:10:06
工作需要,用例需要实现添加,修改,查询和删除。为了确保测试不产生垃圾数据,需要将添加的数据在后面再删除,但是查询中有分页查询的用例,所以需要批量添加一批数据,在删除时再批量删掉添加的数据,怎么在手工不干预的情况下让脚本自动完成,想了好久,在网上查了很多,没找到方法,最后花了很长时间给实验出来了。。。 1. http请求,添加,需要循环多次,并且需要把每次响应里面的文章id保存起来,删除的时候可用 2. 添加正则表达式提取器 3. 添加beanShell脚本后置处理器 一直没搞清楚beanshell脚本的语法,感觉不是java,很木乱,也不知道怎么调试,只能加打印信息。 本来是想把每次取出来的aid放到一个list里面,但是试了一下,发现不知道怎么在各个用例之间传递list类型的参数,只好拼接字符串了。 为了每次循环能够共用这个变量,把这个变量放倒用户自定义变量里面,每次循环中都会修改变量值,这样循环10次后,aids应该是1,2,4,9.。。。这样的字符串,在删除时再把每个id取出来删除。本来是这么想的,发现我们的接口有批量删除接口,省事了,直接拿过来就能用了。 4. 为这个用例添加循环控制器,控制循次数就好了 5. 删除接口中把参数传进去就好了 来源: CSDN 作者: qq83953754 链接: https://blog.csdn.net/qq83953754/article

re模块

安稳与你 提交于 2019-11-29 00:29:02
一:什么是正则? 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法。或者说:正则就是用来描述一类事物的规则。(在Python中)它内嵌在Python中,并通过 re 模块实现。正则表达式模式被编译成一系列的字节码,然后由用 C 编写的匹配引擎执行。 生活中处处都是正则: 比如我们描述:4条腿   你可能会想到的是四条腿的动物或者桌子,椅子等。 继续描述:4条腿,活的;   就只剩下四条腿的动物这一类了。 二:常用匹配模式(元字符) 博客链接 匹配模式 #一对一的匹配 # 'hello'.replace(old,new) # 'hello'.find('pattern') #正则匹配 import re #\w与\W print(re.findall('\w','hello egon 123')) #['h', 'e', 'l', 'l', 'o', 'e', 'g', 'o', 'n', '1', '2', '3'] print(re.findall('\W','hello egon 123')) #[' ', ' '] #\s与\S print(re.findall('\s','hello egon 123')) #[' ', ' ', ' ', ' '] print(re.findall('\S','hello egon 123')) #[

15、正则模块re

依然范特西╮ 提交于 2019-11-29 00:28:53
一:什么是正则?   正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法。或者说:正则就是用来描述一类事物的规则。 (在Python中)它内嵌在Python中,并通过 re 模块实现。正则表达式模式被编译成一系列的字节码,然后由用 C 编写的匹配引擎执行。 生活中处处都是正则: 比如我们描述:4条腿   你可能会想到的是四条腿的动物或者桌子,椅子等 继续描述:4条腿,活的 就只剩下四条腿的动物这一类了 二:常用匹配模式(元字符) http://blog.csdn.net/yufenghyc/article/details/51078107 1 # =================================匹配模式================================= 2 #一对一的匹配 3 # 'hello'.replace(old,new) 4 # 'hello'.find('pattern') 5 6 #正则匹配 7 import re 8 #\w与\W 9 print(re.findall('\w','hello egon 123')) #['h', 'e', 'l', 'l', 'o', 'e', 'g', 'o', 'n', '1', '2', '3'] 10 print(re.findall('\W','hello

js之正则

南楼画角 提交于 2019-11-28 22:20:10
1、正则的声明方法   1)var reg = /abc/; "这个叫对象直接量方式";   2)var reg = new RegExp("abc") 这个叫构造函数方式; 2、正则方法 1)exec() 方法用于检索字符串中的正则表达式的匹配。 返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。   返回的数组中 第0个元素为 0 匹配到的文本   第1个元素为 index 匹配到的文本出现的位置   第2个元素为 input 被匹配的字符串   第3个元素为 length 匹配到的文本的个数   使用while可以匹配多次   while (result = reg.exec(str)) {     console.log(result)   } 2)test 方法用于检测一个字符串是否匹配某个模式.   reg.test(str) //返回true或者false 5、可以用于正则的string方法 1)match()   将字符串中匹配的内容捕获出来   若加上量词g则一次性捕获所有匹配的内容放到数组里返回,若不加则与exec()的返回值一样   用法:string.match(regexp)   match 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。 将字符串中匹配的内容捕获出来   var reg = /abc/g;  

python正则相关

心已入冬 提交于 2019-11-28 21:47:30
1.1 基础语法 (1) 常用元字符 语法 | 描述 :-: | :-: \b | 匹配单词的开始或结束 \d | 匹配数字 \s | 匹配任意不可见(空格、换行符、制表符等等),等价于[\f\n\r\t\v]. \w | 匹配数字任意Unicode字符集,包括字母、数字、下划线、汉字等 . | 匹配除换行符(\n)以外的任意字符 ^或\A | 匹配字符串或行的起始位置 $或\Z | 匹配字符串或行的结束位置 (2) 限定词(又叫量词) 语法 | 描述 :-: | :-: | 重复零次或更多次 | 重复一次或更多次 ? | 重复零次或一次 {n} | 重复n次 {n,} | 重复n次或者更多次 {n,m}} | 重复n到m次 (3) 常用反义词 语法 | 描述 :-: | :-: \B | 匹配非单词的开始或结束 \D | 匹配非数字 \S | 匹配任意可见的字符,[^\f\n\r\t\v] \W | 匹配任意非Unicode字符集 [^abc]] | 除a、b、c以外的任意字符 (4) 字符族 语法 | 描述 :-: | :-: [abc] | a、b或c [^abc] | 除a、b、c以外的任意字符 [a-zA-Z] | a到z或A到Z [a-d[m-p]] |a到d或m到p,即 a-dm-p [a-z&&[def]] | d、e或f(交集) [a-z&&[^bc]] |

js正则分组&引用

元气小坏坏 提交于 2019-11-28 20:45:29
分组 /(\d{4})-(\d{2})-(\d{2})/.test('2019-08-25') // true RegExp.$1='2019' RegExp.$2='08' RegExp.$3='25' RegExp.$4='' RegExp.$_='2019-08-05' // 最多到RegExp.$9,没有$10,这本身是js的坑 // 解决: '2019-08-25'.match(/(\d{4})-(\d{2})-(\d{2})/); // 0: "2019-08-25" // 1: "2019" // 2: "08" // 3: "25" // groups: undefined // index: 0 // input: "2019-08-25" // length: 4 ES2018对正则(分组)的扩展: '2019-08-25'.match(/(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})/) // 0: "2019-08-25" // 1: "2019" // 2: "08" // 3: "25" // groups: {year: "2019", month: "08", day: "25"} // index: 0 // input: "2019-08-25" // length: 4 引用 '2019-08-25'

spark针对web日志正则匹配

蹲街弑〆低调 提交于 2019-11-28 18:15:14
  针对于web日志做分析是学习spark常用练习项目。此文介绍web日志正则匹配相关小提示。 实例测试   从网上找了一个access日志案列 218.19.140.242 - - [10/Dec/2010:09:31:17 +0800] "GET /query/trendxml/district/todayreturn/month/2009-12-14/2010-12-09/haizhu_tianhe.xml HTTP/1.1" 200 1933 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 (.NET CLR 3.5.30729)"   下面是spark-shell中测试代码: val list = """218.19.140.242 - - [10/Dec/2010:09:31:17 +0800] "GET /query/trendxml/district/todayreturn/month/2009-12-14/2010-12-09/haizhu_tianhe.xml HTTP/1.1" 200 1933 "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9.2.8)

正则表达式

假如想象 提交于 2019-11-28 15:41:13
前言 :行吧~三分钟热度的过了大半年。时间过得很快,毕业一年多,至今还未摸索出想干点啥。    今天来记录下正则表达式的学习。对于正则这个东西吧,并不陌生,在校验字符串的时候常常会使用到它。但是本人也总是能不用就尽量不用吧,毕竟相对头可疼。但是又有时候较真点,觉得不写点正则的话显得代码很low。赶鸭子上架,学点、记点。 引用 :《正则表达式30分钟入门教程》(这标题简洁明了似营销广告)    网址: http://deerchao.net/tutorials/regex/regex.htm 需求:密码必须包涵数字、小写字母、大写字母、特殊字符6~15位。 运用到的正则:/^(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[~`!@#%^&*()-_+={}:;<>,.?[\]\/\|\'\"\\\])[0-9a-zA-Z~`!@#%^&*()-_+={}:;<>,.?[\]\/\|\'\"\\\]{6,15}$/. 知识点汇总: 特殊代码 ^:匹配字符串的开始 $:匹配字符串的结束 .:匹配除换行符以外的任意字符 \w :匹配字母数字(等同于[0-9A-Za-z]) \s:匹配任意空白符 \d:匹配数字 \b:匹配单词的开始或结束(这个今天才得知,记下记下) 重复 *:重复零次或更多次 +:重复一次或更多次 ?:重复零次或一次 {n}:重复n次 {n,}