Skip to main content
 首页 » 编程设计

python之正则表达式匹配Python

2025年05月04日29qq78292959

我正在解析一个文件,想在 <color = orange> 中找到或 <color>从我的文件开始。

然后我要拉出值orange。

我如何使用正则表达式来做到这一点。

到目前为止我有这个(这还不够,因为它不寻找颜色有值的情况):

def main(): 
    basefile = open ("base.txt") 
    libfile = open ("file.txt") 
    lines = [] 
    while 1: 
        line = libfile.readline() 
        lines.append("%s" % libfile.readline()) 
        if not line: 
            break 
    inlibrary = 0  
    newlibrary = [] 
    for line in lines: 
        if "<color>" in line: 

请您参考如下方法:

如果您的问题是匹配正则表达式,请查看它们:

>>> m = re.match("<color(?:\s*=\s*(.*?))?>", "<color>asdfsdaf") 
>>> m, m.groups() 
(<_sre.SRE_Match object at 0x7fb0579467b0>, (None,)) 
>>> m = re.match("<color(?:\s*=\s*(.*?))?>", "<color=fuschia>asdfsdaf") 
>>> m, m.groups() 
(<_sre.SRE_Match object at 0x7fb057946738>, ('fuschia',)) 
>>> m = re.match("<color(?:\s*=\s*(.*?))?>", "foobarbaz") 
>>> m #None 
>>> 

但是您真的应该为这项工作使用 XML 解析器。