簡體   English   中英

使用正則表達式從文本文件中提取數據

[英]Extracting data from text file using regular expressions

我有一個文本文件,我試圖從使用正則表達式中提取數據,這是文本文件的示例:

 Card number: 9999*********2789, SEQ: 195
Current session ID: 175
 21/01/2021 09:53:41 : Session terminated

這是我用來獲取我想要的大部分數據的正則表達式:

regex = r"number:\s(\d+\*+\d+).*?ID:\s*(\d*).*?ATM:\s(\w+).*?STAN:\s(\d+).*?Total cash dispensed:\s*([a-zA-Z0-9 ]*).*?completed[\r\n]+(.*?)\s:"

output是這樣的:

在第四列“4000 MGA”中,我想將其分成兩列,分別是“4000”和“MGA”,我嘗試使用以下表達式,但沒有得到任何結果:

regex = r"number:\s(\d+\*+\d+).*?ID:\s*(\d*).*?ATM:\s(\w+).*?STAN:\s(\d+).*?cass 1:\s*\d*([a-zA-Z ]*).?Total cash dispensed:\s*([0-9 ]*).*?completed[\r\n]+(.*?)\s:"

您可以將一個捕獲組分成 2 個並用空格將它們分開:

regex = r"number:\s(\d+\*+\d+).*?ID:\s*(\d*).*?ATM:\s(\w+).*?STAN:\s(\d+).*?Total cash dispensed:\s*([a-zA-Z0-9]+)\s+([a-zA-Z0-9]+).*?completed[\r\n]+(.*?)\s:"

正則表達式演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM