Python - Regex(去掉括号和逗号)



我是Python和Regex模式的新手,这非常令人沮丧。如果有人能帮助我找到正确的模式来删除三个东西,我将非常感激。"、"(2)'] (3) ['

with open(f"/home/pi/students/{biometric_id}.txt") as f:
content = f.readlines()
content = str([item.replace('n', '<br>') for item in content])
#content = re.sub(r"([^()]*)", "", content)
return render_template("Page-4.html", content=content)

[' ', ' ', ' ', ' 项目:奶酪包装"、"成本:$ 3.00,余额:$12 ', '-------------------------- ']

尝试:

content = "['STUDENT DETAILS - ', 'Biometric ID: 653694 ', 'RFID: 18985211235 ', 'Full Name: James John ', 'Balance: $15.2 ', '-------------------------- ', ' ', ' ', 'Item: Cheese Wrap ', 'Cost: $3.00 ', 'Remaining Balance: $12.2 ', '-------------------------- '] "
content = re.sub(r"(',s?')|('])|([')", r"", content)
print(content)

输出:

STUDENT DETAILS - Biometric ID: 653694 RFID: 18985211235 Full Name: James John Balance: $15.2 --------------------------   Item: Cheese Wrap Cost: $3.00 Remaining Balance: $12.2 --------------------------  

我想你这里是一个包含列表项的文件。

你要做的就是读入它然后&;evaluate&;它们作为列表项:

with open(f"/home/pi/students/{biometric_id}.txt", 'r') as f:
for line in f:
data = eval(line)
for item in data:
# do something useful with the data
print(item)

如果文件包含:

['STUDENT DETAILS - ', 'Biometric ID: 653694 ', 'RFID: 18985211235 ', 'Full Name: James John ', 'Balance: $15.2 ', '-------------------------- ', ' ', ' ', 'Item: Cheese Wrap ', 'Cost: $3.00 ', 'Remaining Balance: $12.2 ', '-------------------------- ']

上面会打印出:

STUDENT DETAILS -
Biometric ID: 653694
RFID: 18985211235
Full Name: James John
Balance: $15.2
--------------------------

Item: Cheese Wrap
Cost: $3.00
Remaining Balance: $12.2
--------------------------

当你想验证你的正则表达式时,我建议你使用:https://regexr.com/

关于你的问题,试试

content = "Hola, (mundo)"
re.sub(r'[,()]', '', content)
>> 'Hola mundo'

你觉得怎么样?

最新更新