python正则表达式

\S和\W的区别:

\W匹配 除字母、数字、下划线外的所有

\S匹配 除空格、制表符、换行符外的所有

import re
import numpy as np
f = 'https://CSDN.us/main'
#f = 'https://zoom.us'
str1 =['protocol=','host=','path=','parameter=']
result = re.findall('(\w+)(\W+)',f)
print(result)

result = re.findall('(\w+)(\S+)',f)
print(result)

[('https', '://'), ('CSDN', '.'), ('us', '/')]
[('https', '://CSDN.us/main')]

 

import re
import numpy as np
f = 'https://zoom.us'
#f = 'https://zoom.us/main?mno=123456'
str1 =['protocol=','host=','path=','parameter=']
result = re.findall('(\w+)\W+(\w+\W\w+)\W(\w+)\W(.*)',f)

if(len(result)==0):
    result = re.findall('(\w+)\W+(\w+\W\w+)\W(\w+)',f)
    if(len(result)!=0):
        for i in range(3):
            print(str1[i]+result[0][i])
    else:
        result = re.findall('(\w+)\W+(\w+\W\w+)',f)
        for i in range(2):
            print(str1[i]+result[0][i])
else:
    for i in range(len(str1)):
         print(str1[i]+result[0][i])
import inspect
import os
import random
import sys
import re


with open('E:\\Setcompression\\WadhamCollege\\HEVC帧间.txt','r') as f:
    with open('E:\\Setcompression\\WadhamCollege\\new.txt', 'w') as nf:
        for line1 in f:
            result = re.findall('(\d+) bits\s\SY (\d+\S\d+) dB\s+U (\d+\S\d+) dB\s+V (\d+\S\d+) dB',line1)
            for line2 in result:
                nf.write("%s %s %s %s\n"%(line2[0],line2[1],line2[2],line2[3]))

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值