python中的语句prefixre.sub(r

2020-11-27 17:46:54 字数 5779 阅读 3978

1楼:匿名用户

用空格替换.或者.///////////(0或者任意多个/)

2楼:匿名用户

使用 ‘ ’(空格)替换imagefile中的 .或者是 非/ 的所有字符,并且结束字符不能是 '.'

3楼:匿名用户

正则表达式

http://wiki.ubuntu.

***.**/python%e6%ad%a3%e5%88%99%e8%a1%a8%e8%be%be%e5%bc%8f%e6%93%8d%e4%bd%9c%e6%8c%87%e5%8d%97

好好看看这个就懂啦

python语句matchs = re.findall(r'([^=;]*)=([^=;]*);', plain_str)含义

4楼:匿名用户

[ ] 中的^表示取反,“非”的意思。

[^=;] 匹配 不为等号=且不为分号;的一个字符

* 表示前面这个字符出现0次或多次

在python的正则表达式中例题中pattern = re.***pile(r'\d+') r'\d+'是什么意思呢?

5楼:阳光的雷咩咩

r的意思是不转义,即\表示原样的\。否则有可能被视图按\d为一个字符解析转义。

6楼:大话残剑

\d是匹配数字字符[0-9],+匹配一个或多个

放在一起是匹配一个或多个数字字符,比如:’1‘、’34‘、’9999‘

python 中 re.sub 和 re.***pile 是啥意思呀?跪求大神解释。

7楼:匿名用户

在python中re是一个常用的模块,主要是通过正则表达式进行字符串处理。它的速度相对自己用 find, replace, split来说,通常更快。当然功能更强大。

正则表达式也是一种语言,所以如果通过re.***pile把它编译成对象,会速度快很多。所以我们经常看到这样的语句

exp=re.***pile("\s+")

m=exp.search(bigtext)

printm.group(0)

这段话等同于

m=re.search("\s+",bigtext)

printm.group(0)

re.sub则相当于字符串操作中的replace,比如

sometext=re.sub("(?isu)\r\n","\n",sometext)

上面这句话是将回车换行,变成换行。这是为了将windows下的文本文件移到linux下,防止某些软件不兼容所做的处理。

简单的说re.sub是做字符串替换的, re.***pile是将正则表达式编译成一个对象,加快速度,并重复使用。

python正则表达式re.findall(r"\b\w+\b", s)中的r是什么意思?

8楼:花臂华盛顿

在python的string前面加上‘r’, 是为了告诉编译器这个string是个raw string,不要转意backslash '\' 。 例如,\n 在raw string中,是两个字符,\和n, 而不会转意为换行符。由于正则表达式和 \ 会有冲突,因此,当一个字符串使用了正则表达式后,最好在前面加上'r'。

例:r"\n\n\n\n\n\n”

作用:声明后面的字符串是普通字符串

特殊字符串中含有:转义字符 \n \t 什么什么的用途:一般用在 正则表达式、文件绝对地址

1,正则表达式:

2、系统路径

这样就不用专门的去处理引号之中的特殊字符了

9楼:匿名用户

python中字符串前面加上 r 表示原生字符串,

与大多数编程语言相同,正则表达式里使用"\"作为转义字符,这就可能造成反斜杠困扰。假如你需要匹配文本中的字符"\",那么使用编程语言表示的正则表达式里将需要4个反斜杠"\\\\":前两个和后两个分别用于在编程语言里转义成反斜杠,转换成两个反斜杠后再在正则表达式里转义成一个反斜杠。

python里的原生字符串很好地解决了这个问题,这个例子中的正则表达式可以使用r"\\"表示。同样,匹配一个数字的"\\d"可以写成r"\d"。有了原生字符串,你再也不用担心是不是漏写了反斜杠,写出来的表达式也更直观。

10楼:匿名用户

re是python里的正则表达式模块。findall是其中一个方法,用来按照提供的正则表达式,去匹配文本中的所有符合条件的字符串。返回结果是一个包含所有匹配的list。

[1] 就是列表中的[1]啊

11楼:匿名用户

1,表示匹配的值第一个字符串

12楼:钟桑扬

延伸阅读:python的 内建函数 和 subprocess 。此文是本系列的第三篇文章了,和之前一样,内容出自官方文档,但是会有自己的理解,并非单纯的翻译。

所以,如果我理解有误,欢迎指正,谢谢。

本模块提供了和perl里的正则表达式类似的功能,不关是正则表达式本身还是被搜索的字符串,都可以是unicode字符,这点不用担心,python会处理地和ascii字符一样漂亮。

正则表达式使用反斜杆(\)来转义特殊字符,使其可以匹配字符本身,而不是指定其他特殊的含义。这可能会和python字面意义上的字符串转义相冲突,这也许有些令人费解。比如,要匹配一个反斜杆本身,你也许要用'\\\\'来做为正则表达式的字符串,因为正则表达式要是\\,而字符串里,每个反斜杆都要写成\\。

你也可以在字符串前加上 r 这个前缀来避免部分疑惑,因为 r 开头的python字符串是 raw 字符串,所以里面的所有字符都不会被转义,比如r'\n'这个字符串就是一个反斜杆加上一字母n,而'\n'我们知道这是个换行符。因此,上面的'\\\\'你也可以写成r'\\',这样,应该就好理解很多了。可以看下面这段:

13楼:匿名用户

subn后面的中括号表示返回结果的iterable(迭代器),第2项,是说匹配的次数。

这个字符串被匹配之后,替换了11次,因为每一个字符都是符合\w的。就都替换为hi了,然后返回了一个元组: ("hihihihihihihihihihihi",11) , 故此[1]就是11.

python 正则表达式替换的问题 re.sub 50

14楼:匿名用户

那你能不能直接把-23替换成-99呢?是不是一样的效果

python 字符串替换求解

15楼:小富哥

使用正则,

#!/usr/bin/python

#-*-coding:utf-8-*-importre

phone="2004-959-559#这是一个国外**号码"

#删除字符串中的python注释

num=re.sub(r'#.*$',"",phone)print"**号码是:",num

#删除非数字(-)的字符串

num=re.sub(r'\d',"",phone)print"**号码是:",num以上实例执行结果如下:

**号码是: 2004-959-559

**号码是 : 2004959559

python正则表达式中re.m 是什么意思

16楼:南瓜苹果

python正则表达式中re.m的意思是:多行匹配,影响 ^ 和 $。

正则表达式可以包含一些可选标志修饰符来控制匹配的模式。修饰符被指定为一个可选的标志。多个标志可以通过按位 or(|) 它们来指定。

如 re.i | re.m 被设置成 i 和 m 标志:

re.i:使匹配对大小写不敏感。

re.l:做本地化识别(locale-aware)匹配。

re.s:使 . 匹配包括换行在内的所有字符。

re.u:根据unicode字符集解析字符。这个标志影响 \w, \w, \b, \b。

re.x:该标志通过给予你更灵活的格式以便你将正则表达式写得更易于理解。

扩展资料

正则表达式的模式有i、l、m、s、x、u六种模式:

1、i (ignorecase) , 忽略大小写的匹配模式。

2、l (locale),字符集本地化。

使预定字符类 \w \w \b \b \s \s 取决于当前区域设定,比如在转义符\w,在英文环境下,它代表[a-za-z0-9_],即所以英文字符和数字。如果在一个法语环境下使用,缺省设置下,不能匹配"é" 或 ""。加上这l选项和就可以匹配了,不常用。

3、m (multiline),多行模式。

改变 ^ 和 $ 的行为,^匹配开始位置,这种模式下匹配每一行的开始,$匹配结束位置,这种模式下匹配每一行的结束。

4、s (dotall),点任意匹配模式。

此模式下.可匹配任何字符,包括换行符。

5、x (verbose),冗余模式。

这个模式下正则表达式可以是多行,忽略空白字符,并可以加入注释,方便理解。

6、u (unicode),unicode定义模式。

使预定字符类 \w \w \b \b \s \s \d \d 取决于unicode定义的字符属性。

17楼:紫薇参星

正则表达式中的re.m表示将字符串视为多行,从而^匹配每一行的行首,$匹配每一行的行尾

我给你个python语言的例子,你看看吧

这个程序是匹配冒号加一个空格后的数字串,中间有换行符\n所以用多行匹配re.m

#!/usr/bin/python3

importre

line="if_mib::=counter32:12345\nif_mib::=counter32:1234556";

result=re.findall(r'(?<=\:\s)\d+$',line,re.m)

ifresult:

print(result)

else:

print("nothingfound!!")

运行结果

['12345','1234556']

python中用正则表达式去掉文本中所有的标点符号

18楼:快乐v美天

我的理解是 python’s的“ ’ ”也是字符 ,和标点符号一样。你只要把去除的字符都加到正则表达式的括号中就可以了。,所以:

import re

r='[’!"#$%&\'()*+,-./:;<=>?@[\\]^_`~]+'

line=re.sub(r,'',"python’s")print line

19楼:小石头的雪宝宝

先定义变量 punctuation,其内容应该是所有的标点符号。

例如:import repunctuation def removepunctuation...

python是一种面向对象、直译式计算机程序设计语言,由荷兰人guido van rossum发明于1989年,1991年发行第一个公开发行版。它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是c/c++)轻松地联结在一起。

python是纯粹的自由软件, 源**和解释器cpython遵循 gpl协议。语法简洁清晰,特色之一是强制用空白符作为语句缩进。名字**于一个喜剧,最初设计python这种语言的人并没有想到python会在工业和科研上获得如此广泛的使用。