为我的问题想出一个合适的标题是很困难的。首先是一些背景信息,以备不时之需。
*我有一个账单,我试图从使用正则表达式中读取信息。我将需要的信息保存到 4 个不同的表中:帐户、公用事业、位置和税。
逻辑是每张账单只有一个帐号(帐户级别)。每个帐号可以属于多个实用程序(实用程序级别)。每个实用程序可以有多个位置(假设此问题只有 1 个位置)。每个位置可以有多个税。*
因此,对于此处 找到的账单,我们可以看到 4 种税(城市销售税 2.97、县销售税 1.46、州销售税 3.44 和 PPRTA 税 1.10)都属于“电力”公用事业。我们还看到 4 个公用事业(电力、燃气、水和废水)属于 1 个帐号,每个帐号都有自己的税费。
以前我一直在做这样简单的事情来多次捕获一个捕获组中的所有税收:税收:。 \$(. )
我现在想要完成的是构建一个正则表达式,它仅查找给定实用程序的所有税款。同样,它必须在一个具有多个匹配项的捕获组中。
这是迄今为止我对电税的一个示例:(?:Electric Commercial Service(?:. \n) ?. ?Tax:.* \$(. )(?:. \n) ?. ?此项服务的总费用)*
如您所见,这仅收取第一笔税款。我想不出一种方法来让它在“电力商业服务”和与电力服务有关的“这项服务的总收费”这两个词之间征收所有税款。
谢谢!