正则-元字符 注意正则表达式中间不要随意加空格

<_sre.SRE_Match object; span=(0, 11), match=‘192.168.1.1‘>
>>> re.search(r‘Fish(C|D)‘,‘FishC‘)
<_sre.SRE_Match object; span=(0, 5), match=‘FishC‘>
>>> re.search(r‘Fish(C|D)‘,‘FishD‘)# | 相当于逻辑或
>>> re.search(r‘^FishC‘,‘FishC.com‘)
<_sre.SRE_Match object; span=(0, 5), match=‘FishC‘>#脱字符^匹配字符串的开始位置
>>> re.search(r‘FishC$‘,‘FishC.com‘)
>>> re.search(r‘FishC$‘,‘I love FishC‘)
<_sre.SRE_Match object; span=(7, 12), match=‘FishC‘># $匹配输入字符串的结束位置


>>> re.search(r‘(FishC)\1‘,‘FishCFishC‘)
<_sre.SRE_Match object; span=(0, 10), match=‘FishCFishC‘>
>>> (FishC)\1 ==FishCFishC #反斜杠加1-99内的数字代表前面字符串重复次数


>>> re.search(r‘[.]‘,‘FishC.com‘)
<_sre.SRE_Match object; span=(5, 6), match=‘.‘>
>>> re.findall(r‘[a-z]‘,‘I love FishC.com‘)
[‘l‘, ‘o‘, ‘v‘, ‘e‘, ‘i‘, ‘s‘, ‘h‘, ‘c‘, ‘o‘, ‘m‘] #中括号表示字符类,匹配其中包含的任意字符
>>> re.findall(r‘[^FishC]‘,‘I love FishC.com‘)
[‘I‘, ‘ ‘, ‘l‘, ‘o‘, ‘v‘, ‘e‘, ‘ ‘, ‘.‘, ‘c‘, ‘o‘, ‘m‘]#脱字符放在中括号第一个表示取反的意思,如果出现在其他位置则作为普通字符匹配,小横杠也是一样的,放在中间表示范围,放在其他位置只表示普通字符
>>> re.search(r‘FishC{3,5}‘,‘FishCCCC‘)
<_sre.SRE_Match object; span=(0, 8), match=‘FishCCCC‘>#{m,n}表示匹配m到n次
<_sre.SRE_Match object; span=(0, 8), match=‘FishCCCC‘>
>>> re.search(r‘FishC*‘,‘Fish‘)
<_sre.SRE_Match object; span=(0, 4), match=‘Fish‘>
>>> re.search(r‘FishC*‘,‘fishCCC‘)
>>> re.search(r‘FishC*‘,‘FishCCC‘)
<_sre.SRE_Match object; span=(0, 7), match=‘FishCCC‘># *表示前面的子表达式,注意是子表达式重复0次或者多次 + 表示1次或多次,?表示0次或者1次
<_sre.SRE_Match object; span=(0, 45), match=‘<html><title> I love FishC.com</title></html>‘>
>>> re.search(r‘<.+?>‘,s)
<_sre.SRE_Match object; span=(0, 6), match=‘<html>‘>#贪婪模式,python默认是贪婪模式,即满足条件的会尽可能多的找出来,去掉贪婪模式的方式是加?,这样在第一个符合情况的字符串就会返回,而不是返回最后一个找到的
时间: 2024-12-28 14:49:05

正则-元字符 注意正则表达式中间不要随意加空格的相关文章

2015年8月27日课程作业(文件权限管理及grep正则和扩展正则表达式)-JY1506402-19+liuhui880818

学习内容:文件权限管理及grep正则和扩展正则表达式 系统环境:CentOS 6.7/7 x86_64 一.作业(练习)内容: 1.总结本此课程中所涉及命令的使用方法及相关示例展示: 2.总结基本正则表达式及扩展正则表达式 3.显示/etc/passwd文件中以bash结尾的行 4.显示/etc/passwd文件中的两位数或三位数 5.显示`netstat -tan`命令结果中以'LISTEN'后跟0个.1个或者多个空白字符结尾的行 6.添加用户bash.testbash.basher以及nol

正则对象与正则表达式的基础学习

正则对象与正则表达式的基础学习 正则表达式是文字匹配的工具,它更像是一个文字模版,只要符合条件的结果都会被筛选出来. 正则表达式在使用上,它依赖于正则对象提供的方法与属性,所以使用正则表达式之前要定义正则对象. 正则表达式的两种使用方式: 1. 定义正则对象 var reg = new RegExp( /regexpression/modified ) //格式一 var reg = new RegExp( 'regexpression' , 'modified' ) //格式二 2. 直接量的

【Android】android string.xml前后加空格的技巧

android string.xml 文字中间加入空格 <string name="password">密    码</string> &#160 这个就代表着空格 [Android]android string.xml前后加空格的技巧,布布扣,bubuko.com

scanf后加空格,的后果

最近练习C语言函数,用函数进行选择排序 1 #include <stdio.h> 2 3 int main() 4 { 5 void sort(int array[],int n); 6 int i,slist[10]; 7 8 for (i = 0; i<10 ;i++) 9 { 10 scanf("%d ",&slist[i]); 11 } 12 sort(slist,10); 13 printf("The sorted array:\n&quo

19 Python 正则模块和正则表达式

什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译为共享库或DLL的C或C++扩展 3 包好一组模块的包 4 使用C编写并链接到python解释器的内置模块 为何要使用模块? 如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过python

【C#正则基础】正则表达式

1. 代表任意多个字符:(.*?)2. 代表网页里的<body>*</body>任意的标签内容,替换以后网页源码就只剩纯文本:<[^>]*>3. 代表网页中的空格: 4. 四位0~9的数字,一般用来匹配验证码:[0-9]{4}5. 手机号正则式:\d{11}6. 密码正则式:[.*|\s*]\w{6,16}$7. 替换掉所有的换行空格等字符8. htmltext = htmltext.Replace("\t", "").Re

JS正则与.net正则表达式的区别

原字符串:长期投资人月井石问华菱钢铁(000932)公司反复强调VAMA的战略意义,请问在2015年4季度达产后对公司贡献的盈利预期 正则匹配处理后:公司反复强调VAMA的战略意义,请问在2015年4季度达产后对公司贡献的盈利预期 也就是说,需要匹配的是:以任意字符(包括中文.字母.数字)开头,然后匹配一个指定的汉字“问”,接着是三到四个汉字,正括号,六个数字,反括号,哦儿了. 对于这样的同一个需求, .net版写出来是这样的: string text = Regex.Replace(text2

php 中关于正则 元字符

正则表达式中具有特殊含义的字符称之为元字符,常用的元字符有: \ 一般用于转义字符^ 断言目标的开始位置(或在多行模式下是行首)$ 断言目标的结束位置(或在多行模式下是行尾). 匹配除换行符外的任何字符(默认)[ 开始字符类定义] 结束字符类定义| 开始一个可选分支( 子组的开始标记) 子组的结束标记? 作为量词,表示 0 次或 1 次匹配.位于量词后面用于改变量词的贪婪特性. (查阅量词)* 量词,0 次或多次匹配+ 量词,1 次或多次匹配{ 自定义量词开始标记} 自定义量词结束标记

正则元字符-01-图片备份