忽略特定模式(正则表达式)
问题描述:
总额因(包括GST $ 7.68)$ 84.55
正则表达式:
Total Amount.?\s*(?!\(inc\))?[^\$]*(\$\s?[0-9,]+(\.[0-9]{1,})?)
https://regex101.com/r/YXr023/1
但匹配它找到的第一笔金额$7.68
。如何忽略括号内的任何内容,使其与$84.55
相符?
追加(?![^\(]*\))
到底,完全忽略了这一行,这是我不想要的。
答
希望这篇文章对您会有帮助..
正则表达式:用于(
2.\$[\d\.]+
匹配字符串喜欢背后(?<!\()\$[\d\.]+(?!.*?\))
(?<!\()
负的样子$10.1000
(?!.*?\))
不包含任何进一步的)
有只有一组支架的可能吗?括号外(后)是否会有一个数字?你的问题正则表达式和你的链接中的正则表达式有什么不同吗? https://regex101.com/r/YXr023/3怎么样?而不是试图让这一切都非贪婪,只是贪婪的匹配到最后一个$ ...? – TessellatingHeckler
是的,只有一套支架。描述包括忽略不起作用的括号部分。但你的工作似乎正在进行中! – 3zzy
@TessellatingHeckler ..除了数量是几行后(坏OCR)。例如:http://pastebin.com/ikL3Jvt0 – 3zzy