1.正则表达式相关知识及字符串操作
字符串拼接join方法
str.join(iterable)1
2L = ["<0112>", "<32>", "<1024x768>", 60, "<1>", "<100.0>", "<500.0>"]
print(''.join(str(x) for x in L))如何判断字符串a是否以字符串b开头或结尾,str.startswith(),str.endswith()
1
2a="abcdefg||fadfa.py"
a.endswith(('.py','.sh'))如何用Python来进行查询和替换一个文本字符串?
1
2s = '\tabd\t124\txyz\r\n'
print(re.sub('\t|\r|\n','',s))一次性拆分字符串 re.split(),str.split()
1
2
3
4
5
6
7
8"""
解决方案:
方法一:连续使用是str.split()方法,每次处理一种分隔符号
方法二:使用正则表达式的re.split()方法,一次性拆分字符串
"""
s = 'ab;cd|efg|hi,jklmn|topq;rst,uvw|txyz'
t = s.split(';')
t1 = re.split(r'[,;|\t]+',s)Python里面match()和search()的区别?
1
2re模块中match(pattern,string[,flags]),检查string的开头是否与pattern匹配。
re模块中re.search(pattern,string[,flags]),在string搜索pattern的第一个匹配值。Python re.findall()方法
1
2
3
4#寻找一段字符串中的11位数字(手机号),返回列表
import re
str1="13832244324gdsjsfhauer13632996133"
re.findall(r'\d{11}',str1)用Python匹配HTML tag的时候,<.>和<.?>有什么区别?
答:术语叫贪婪匹配( <.> )和非贪婪匹配(<.?> )
前者是贪婪匹配,会从头到尾匹配 xyz,而后者是非贪婪匹配,只匹配到第一个 >。
- 如何去掉字符串中不需要的字符
1 | """ |
- 补充 单引号,双引号,三引号的区别
答:单引号和双引号是等效的,如果要换行,需要符号(),三引号则可以直接换行,并且可以包含注释
如果要表示Let’s go 这个字符串
单引号:s4 = ‘Let\’s go’
双引号:s5 = “Let’s go”
s6 = ‘I realy like“python”!’
这就是单引号和双引号都可以表示字符串的原因了