正则表达式

常见的正则表达式

落爺英雄遲暮 提交于 2020-01-26 06:16:06
正则表达式常见的有 \w \s \d \b . 匹配除了换行符以外的任意字符; \w 匹配字母或者数字或者下划线或者汉字 等价"[Aa-Zz0-9]" \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的开始或结束 ^ 匹配字符串的开始 $ 匹配字符串的结束 /-/g 匹配字符串中所有的"-" 来源: CSDN 作者: maxiaoxin1314 链接: https://blog.csdn.net/maxiaoxin1314/article/details/104048296

14-2 正则表达式

瘦欲@ 提交于 2020-01-26 05:33:29
https://city.zhenai.com/ 打开网页,右键检查,在console中,$('#app>article>dl')可以得到css元素 package main import ( "regexp" "fmt" ) const text = `My email is flliuqi@didiglobal.com email is abc@def.org email2 is kkk@qq.com email3 is ddd@abc.com.cn` func main() { //re := regexp.MustCompile(".+@.+\\..+") re := regexp.MustCompile(`([a-zA-Z0-9]+)@([a-zA-Z0-9.]+)(\.[a-zA-Z0-9]+)`) //match := re.FindString(text) match := re.FindAllString(text, -1) fmt.Println(match) match_sub := re.FindAllStringSubmatch(text, -1) fmt.Println(match_sub) for _, m := range match_sub { fmt.Println(m) } } package main import ( "net/http"

Python 模块之re正则表达式

元气小坏坏 提交于 2020-01-26 00:02:23
re 正则表达式就是字符串的匹配规则 元字符: . ^ $ * + ? { } [ ] | ( ) \ . : 默认匹配的是除'\n'以外的所有字符 (在方法内指定flags = re.DOTALL,匹配任意字符) ^ : 从字符串的开头开始匹配 (在方法内指定falgs = re.MULTILINE,则会改变这种行为) $ : 从字符串的结尾开始匹配 (在方法内指定falgs = re.MULTILINE,则会改变这种行为) * : 匹配*前的字符0次以上 + : 匹配+前的字符1次以上 ? : 匹配?前的字符0次或1次 { } : {m}匹配前一个字符m次,{m,n}匹配前一个字符m到n次(包含m和n) [ ] : 字符集,从[ ]中任意匹配一个,[^]匹配任意一个不在[ ]中的字符 | : 或,匹配|左边或右边的字符 ( ) : 组,在正则表达式的规则里会优先运行组里的表达式 (在( )里加?:可以取消组的优先级) \ : 转义,把有特殊意义的字符转成字面意思 \A : 从字符串开头开始匹配,效果同^ \Z : 从字符串结尾开始匹配,效果同$ \d : 匹配数字0-9,效果同[0-9] \D : 匹配非数字,效果同[^0-9] \w : 匹配字母和数字,效果同[A-Za-z0-9] \W : 匹配非字母、非数字,效果同[^A-Za-z0-9] \s : 匹配空白字符,空格、

正则表达式

冷暖自知 提交于 2020-01-25 23:59:34
正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则。正则表达式通常被用来检索、替换那些符合某个模式的文本。 语法: import re #导入re模块 m = re.match("abc","abcdef") if m: print(m.group()) #输出abc,表示匹配到abc p = re.compile("^[0-9]") #生成的正则对象 m = p.match('12354Abc') #需要匹配的字符串 print(m.group()) #输出1 常用操作: 1.re.match(pattern, string)     # 从头匹配 2.re.search(pattern, string)    # 匹配整个字符串,直到找到一个匹配 3.re.split()             # 将匹配到的格式当做分割点对字符串分割成列表 m = re.split("[0-9]","tudou1fanqie2qiezi3doujiao4") print(m) #输出 ['tudou', 'fanqie', 'qiezi', 'doujiao', ''] 4.re.findall()          # 找到所有要匹配的字符并返回列表格式 m = re.findall("[0-9]","tudou1fanqie2qiezi3doujiao4") print(m)

10-正则

[亡魂溺海] 提交于 2020-01-25 23:56:30
什么是正则表达式? 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符串及这些特定字符的组合,组成一个‘规则字符串’,这个‘规则字符串’用来表达对字符串的一种过滤逻辑。 http://tool.oschina.net/regex/ 开源中国在线正则表达式测试 模式 描述 \w 匹配字母数字及下划线 \W 匹配非字母数字下划线 \s 匹配任意空白字符,等价于 [\t\n\r\f]. \S 匹配任意非空字符 \d 匹配任意数字,等价于 [0-9] \D 匹配任意非数字 \A 匹配字符串开始 \Z 匹配字符串结束,如果是存在换行,只匹配到换行前的结束字符串 \z 匹配字符串结束 \G 匹配最后匹配完成的位置 \n 匹配一个换行符 \t 匹配一个制表符 ^ 匹配字符串的开头 $ 匹配字符串的末尾。 . 匹配任意字符,除了换行符,当re.DOTALL标记被指定时,则可以匹配包括换行符的任意字符。 [...] 用来表示一组字符,单独列出:[amk] 匹配 'a','m'或'k' [^...] 不在[]中的字符:[^abc] 匹配除了a,b,c之外的字符。 * 匹配0个或多个的表达式。 + 匹配1个或多个的表达式。 ? 匹配0个或1个由前面的正则表达式定义的片段,非贪婪方式 {n} 精确匹配n个前面表达式。 {n, m} 匹配 n 到 m 次由前面的正则表达式定义的片段

python——re模块(正则表达)

╄→尐↘猪︶ㄣ 提交于 2020-01-25 23:45:19
python——re模块(正则表达)   两个比较不错的正则帖子: http://blog.csdn.net/riba2534/article/details/54288552 http://blog.csdn.net/songyu0120/article/details/45028401 正则表达式 本身也和python没有什么关系,就是 匹配字符串内容的一种规则 。 官方定义: 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 正则 在线测试工具 http://tool.chinaz.com/regex/ 字符组 : [字符组] 在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示 字符分为很多类,比如数字、字母、标点等等。 假如你现在要求一个位置"只能出现一个数字",那么这个位置上的字符只能是0、1、2...9这10个数之一。 正则 待匹配字符 匹配 结果 说明 [0123456789] 8 True 在一个字符组里枚举合法的所有字符,字符组里的任意一个字符和"待匹配字符"相同都视为可以匹配 [0123456789] a False 由于字符组中没有"a"字符,所以不能匹配 [0-9] 7 True 也可以用-表示范围,[0-9]就和

爬虫前提——正则表达式语法以及在Python中的使用

一世执手 提交于 2020-01-25 23:44:39
正则表达式是用来处理字符串的强大工具,他并不是某种编程云。 正则表达式拥有独立的承受力引擎,不管什么编程语言,正则表达式的语法都是一样的。 正则表达式的匹配过程 1.一次拿出表达式和文本中的字符比较。 2.如果每一个字符都能匹配,则匹配成功;一旦有匹配不成功的字符则匹配失败。 3.如果表达式中有两次或便捷,这个过程会稍微有一些不同。 下面举例一些符号 [....]  字符集(字符类)。对应的位置可以是字符集中任意字符。字符集中的字符可以猪哥列出,也可以给出范围,如[abc]或[a-c]。第一个字符如果是^则表示取反,如果[^abc]表示不是abc的其他字符。所有的特殊字符在字符集中都是去某原有的特殊含义。在字符集中如果是用]、-或^,可以在前面加上转移字符反斜杠\,或把]、-放在第一个字符,把^放在非第一个字符。 预定义字符集(可以写在字符集[....]中): \d  数字:[0-9] \D  非数字:[^\d] \s  空白符:[<空格>\t\r\n\f\v] \S  非空白符:[^\s] \w  单词字符:[A-Za-z0-9_] \W  飞单词字符:[^\w] 数量词(用在字符或(...)之后) *  匹配前一个字符0或无限次 +  匹配前一个次1次或无限次 ?  匹配前一个次0次或1次 {m}  匹配前一个字符m次 {m,n}  匹配前一个字符m至n次(多于n次则失败)  

正则表达式之基础知识

廉价感情. 提交于 2020-01-25 23:43:57
官方定义:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 正则表达式 在线测试工具 http://tool.chinaz.com/regex/ 字符组 : [字符组] 在同一个位置可能出现的各种字符组成了一个字符组,在正则表达式中用[]表示 字符分为很多类,比如数字、字母、标点等等。 假如你现在要求一个位置"只能出现一个数字",那么这个位置上的字符只能是0、1、2...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,用来验证十六进制字符 字符: 补充: \A 仅匹配字符串的开始 \A12AC匹配12AC \b 匹配一个单词的边界

python正则表达式(1)--特殊字符

最后都变了- 提交于 2020-01-25 23:43:28
正则表达式—特殊表达式含义 正则表达式的字母和数字表示他们自身,但多数字母和数字前加一个反斜杠时会拥有不同的含义。 下面列出了正则表达式模式语法中的特殊元素。 1.普通字符集 1) \w   匹配字母数字及下划线 2) \W   匹配非字母数字及下划线 3) \s   匹配任意空白字符,等价于 [\t\n\r\f]. 4) \S   匹配任意非空白字符 5) \d   匹配任意数字,等价于 [0-9] 6) \D   匹配任意非数字 7) \1...\9   匹配第n个分组的内容。 8) [a-zA-Z0-9] 匹配任何字母及数字 2.数量字符集 用在字符或分组符(...)之后,默认贪婪匹配,如果想抑制贪婪匹配,需在数量字符后加?,例如:\w+? 1) .    匹配任意字符,除了换行符,当re.DOTALL标记被指定时,可以匹配包括换行符的任意字符 2) * 匹配前一个字符0次1次或多次 3) + 匹配前一个字符1次或多次 4) ? 匹配前一个字符0次或1次 5) {m} 匹配前一个字符m次 6) {m,n} 匹配前一个字符m到n次 7) {m,} 匹配前一个字符至少m次 8) {,n} 匹配前一个字符0到n次,最多n次 3.边界匹配符 1) ^       匹配字符串开头,如果是多行则匹配每一行的开头 2) [^]       在[...]中,^表示否定,如非字母[^a-zA

Python正则表达式

这一生的挚爱 提交于 2020-01-25 23:42:49
符号 功能 举例 字符串 匹配字符串的值 foo re1 | re2 匹配正则表达式 re1 或 re2 foo | bar . 匹配任何字符(换行符除外) b . b ^ 匹配字符串的开始 ^ Dear (以 Dear 开头的字符串) $ 匹配字符串的结尾 / bin /*sh (比配:/bin/bash、/bin/csh等) * 匹配前面出现的正则表达式零次或 多次 [A-Zaz0-9]* + 匹配前面出现的正则表达式一次或 多次 [a-z]+\.com ? 匹配前面出现正则表达式零次 或 一次 goo? {N} 匹配前面出现的正则表达式N次 [0-9]{3} {M,N} 匹配重复出现M次 到 N次正则表达式 [0-9]{5,9} [...] 匹配字符组里出现的任意一个字符 [aeiou] [x-y] 匹配从字符x到y中的任意一个字符 [0-9],[A-Za-z] [^...] 不匹配字符集中出现的任何一个字符 [^aeiou],[^A-Za-z0-9] (...) 匹配封闭括号中正则表达式(RE),并保存为子组 ([0-9]{3})?,f(00|u)bar \d 匹配任何数字,和[0-9]一样(\D是\d的反义:任何非数字) data\d+.text \w 匹配任何数字字母字符,和[A-Za-z0-9]相同 [A-Zq-z_]\w+ \s 匹配任何空白符号 of\sthe