Python使用正则表达式搜索CSV并将结果导出到不同的CSV

Python使用正则表达式搜索CSV并将结果导出到不同的CSV,python,regex,python-3.x,csv,Python,Regex,Python 3.x,Csv,我正在使用Python3加载regex和csv模块,并尝试创建一个脚本,用正则表达式从csv中提取字符串,然后将结果导出到另一个csv。我的想法是我有一个csv,有人给了我,它有一个单列,出于某种原因,有一个单元格,里面有很多信息。包括引号、换行符和一堆其他垃圾。我只需要每个细胞的一小部分 我的脚本能够打印结果,但由于某些原因,以下脚本在尝试将以下内容写入csv时返回错误“AttributeError:'re.Match'对象没有属性'write'” 我想从csv的每个单元格中提取一个字符串,然

我正在使用Python3加载regex和csv模块,并尝试创建一个脚本,用正则表达式从csv中提取字符串,然后将结果导出到另一个csv。我的想法是我有一个csv,有人给了我,它有一个单列,出于某种原因,有一个单元格,里面有很多信息。包括引号、换行符和一堆其他垃圾。我只需要每个细胞的一小部分

我的脚本能够打印结果,但由于某些原因,以下脚本在尝试将以下内容写入csv时返回错误
“AttributeError:'re.Match'对象没有属性'write'”

我想从csv的每个单元格中提取一个字符串,然后将其导出到另一个csv。

import csv
import re

with open('Failed.csv',mode='r') as csv_file, open('result.csv', mode='wb') as csv_result:
     csv_reader = csv.reader(csv_file)
     writer=csv.writer(csv_result, delimiter=',')
     for row in csv_reader:
            pattern = 'Computer Configuration\\.*\n*.*'
            currentrow = row[0]
            found = re.search(pattern, currentrow) 
            if found:
                print(found)
                writer.writerow(found)

方法
re.search
返回一个不能直接使用的
Match
对象。如果要从行中检索值,可以使用组

value = "foo123"
pattern = "foo(.*)"
match = re.search(pattern, value)

print(match, type(match))  # <re.Match object; span=(0, 3), match='foo'> <class 're.Match'>
print(match.groups())  # ('123',)
print(match.group(1))  # 123
value=“foo123”
pattern=“foo(.*)”
匹配=重新搜索(模式、值)
打印(匹配,键入(匹配))#
打印(match.groups())#('123',)
打印(匹配组(1))#123

奇怪的部分是当我打印时(match.groups()),它只返回()@Zygodactyl您需要在模式中使用括号来创建匹配的组,您可以阅读有关组的内容,您可以轻松找到详细信息;)是的,就是这样,我错过了愚蠢的模式中的括号。还必须将第二个文件的open从wb更改为w