使用 https://regex101.com/r/ukjM5F/1
我的正则表达式是:
(?:'\d+[A-Za-z ]*)(\d+|\d+\.)
它使用g
(全局)修饰符。
我如何抓住所有人
10个
12
以及
2.5
3.5
现在我被困在如何抓住第一个小数位(例如2.5)
我正在匹配此示例字符串:
['Table: Waiter: kenny',
'======================================',
'1 GRILLED AUSTRALIA ANGU **29.00**',
'----------------------------------',
'TOTAL 29.00', 'CASH 29.00',
'CHANGE 0.00',
'Signature:__________________________',
'Thank you & see you again soon!']
['1 Carrot Cake **2.50**',
'----------------------------------',
'TOTAL 2.50', 'CASH 2.50',
'CHANGE 0.00',
'====================================',
'Thank You and',
'See You Again!']
['Table: Waiter: kenny',
'======================================',
'1 SAUSAGE WRAPPED WITH B **10.00**',
'1 ESCARGOT WITH GARLIC H **12.00**',
'1 PAN SEARED FOIE GRAS **15.00**',
'1 SAUTE FIELD MUSHROOM W **9.00**',
'1 CRISPY CHICKEN WINGS **7.00**',
'1 ONION RINGS **6.00**',
'----------------------------------',
'TOTAL 59.00', 'CASH 59.00',
'CHANGE 0.00',
'Signature:__________________________',
'Thank you & see you again soon!']
['1 Carrot Cake **2.50**',
'1 Chocolate Cake **3.50**',
'----------------------------------',
'TOTAL
6.00', 'CASH
6.00', 'CHANGE 0.00',
'===================================='
, 'Thank You and', 'See You Again!']
答案 0 :(得分:1)
试试这个:\d+[.]?\d*
匹配所有带或不带小数点的数字
https://regex101.com/r/9UHCt4/1
但是,可能更好的做法是不要尝试在大部分文本处理中使用正则表达式。因为这是结构化的,你可以使用正则表达式识别线的结构,使用splitting / awk将其分解为列,然后从那里开始。
答案 1 :(得分:0)
答案 2 :(得分:0)