python判断句子是否匹配某种模式


 

re.search是字符串里面存在某种正则

if  re.search(r"^\s{0,}\(([a-zA-Z]|\d+)\)", en):    
    lines.append(ch + '|||' + en +'\n')

  

re.match是整个字符串匹配

if re.match(r".*\|\|\|.*", line):

 

re.findall可能得到的是数组,len(re.findall)判断数组是否为空 即能判断字符串中是否匹配某种模式

 while len(re.findall( r'[a-z]+[A-Z]',  line)) > 0:

 

如何拆分TomJackSun为Tom Jack Sun:

 while len(re.findall( r'[a-z]+[A-Z]',  line)) > 0: #TomJack->Tom Jack
        line = re.sub( r'([a-z]+)([A-Z])', r'\1 \2', line )

 

替换操作re.sub和re.subn有什么区别呢:

把?换为!  nu代表替换了几个

line,nu = re.subn(r'!','!',line)   

 

把空格替换掉

ch = re.sub('\s+','',ch)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM