我試圖在使用正則運算式的特定字母之后將字符放在新行上。我的原始資料如下所示:
Total current charges (please see Current account details) $38,414.69
ID Number
1001166UNBEB
ACCOUNT SUMMARY
SVL0
BALANCE OVERDUE - PLEASE PAY IMMEDIATELY $42,814.80
我想得到ID Number
我的嘗試在這里:
ID_num = re.compile(r'[^ID Number[\r\n] ([^\r\n] )]{12}')
ID num 的長度始終為 12,并且始終在ID Number這之后我在運算式中指定長度并嘗試檢測之后的元素。
但這并沒有按預期作業。
有人會幫我嗎?
uj5u.com熱心網友回復:
您的正則運算式不起作用,因為[ ]在模式的開頭使用了,這些用于字符集。
所以將其替換為( ). 你的模式看起來像:r'^ID Number[\r\n] ([^\r\n] ){12}'
但是您可以將您的模式簡化為:ID Number[\s] (\w )
\r\n將在\s和 中匹配數字和 alpha 字符\w。
import re
s = """
Total current charges (please see Current account details) $38,414.69
ID Number
1001166UNBEB
ACCOUNT SUMMARY
SVL0
BALANCE OVERDUE - PLEASE PAY IMMEDIATELY $42,814.80
"""
print(re.findall(r"ID Number[\s] (\w )", s))
# ['1001166UNBEB']
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/451730.html
