python正则表达式匹配包含或者不包含字符串的方法

记录下正则匹配包含或者不包含字符串的表达式

import time
import re

findStr = 'setAttr ".uvst[0].uvsn" -type "string" "UVChannel_1";'
#匹配不包含"UVChannel_1"的字符串, 表达式为"\"(?!UVChannel).*\";$", 注意文本中的引号需要转义
pattern = re.compile(r'setAttr.\"\.uvst\[0]\.uvsn\".-type.\"string\".\"(?!map1).*\";$') 
pattern1 = re.compile(r'setAttr.\"\.uvst\[0]\.uvsn\".-type.\"string\".\"map1\";$')

pattern2 = re.compile(r'setAttr \"\.uvst\[0]\.uvsn\" -type \"string\" \"UVChannel.*\";$')
pattern3 = re.compile(r'setAttr \"\.uvst\[0]\.uvsn\" -type \"string\" \"(?!UVChannel).*\";$')

def main():

    start = time.process_time()
    with open('heiYinPMHQZN01_all_render.ma', 'r') as fw:
        data = fw.readlines()
        for each in data:
            ret = pattern1.findall(each)
            if ret:
                print(each)

    end = time.process_time()
    print('Running time: %s Seconds' % (end - start))



if __name__ == '__main__':
    main()
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值