首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >所有发票项目说明

所有发票项目说明
EN

Stack Overflow用户
提问于 2020-11-11 06:43:43
回答 1查看 127关注 0票数 0

我正在设法调整发票上的所有物品(名称、单价、总额、增值税等)。设法获得有关数字的所有信息,但最大的问题是提取项目描述,因为有时它是在两个单独的行。这就是我需要的

代码语言:javascript
复制
1 Agrafe metalice Eco, rotunjite, 33 mm, 50 buc/cutie buc. 30.00 0,76 22,80 4,33
 
 
(SOBO604)
 
2 Banda corectoare DONAU Mouse, 5 mm x 8 m, orizontala, buc. 5.00 4,83 24,15 4,59
 
 
blister (7635001PL-99)
 
 
3 Biblioraft plastifiat OFFICE Products, 5 cm, colturi buc. 75.00 5,08 381,00 72,39
 
 
metalice, albastru (21011121-01)
 
4 Burete magnetic DONAU, 110 x 57 x 25 mm, galben buc. 10.00 5,53 55,30 10,51
 
 
(7638001PL-99)
 
 
5 Calculator de birou Canon WS-1610T, solar, 16 cifre, buc. 1.00 71,11 71,11 13,51
 
 
afisaz inclinat, format mare (WS1610T)
 
6 Capse zincate OFFICE Products 24/6, 1000 buc/cutie buc. 5.00 1,12 5,60 1,06
 
 
(18072419-19)
 
 
7 Creion grafic Eco, ascutit, cu radiera, corp verde buc. 20.00 0,40 8,00 1,52
 
 
(SOIS432)

8 Creion mecanic BIC Matic, 0.7 mm (601021) buc. 4.00 1,88 7,52 1,43

9 Dosar din plastic cu sina si doua perforatii OFFICE buc. 250.00 0,35 87,50 16,63

Products, albastru (21104211-01)

10 Dosar din plastic cu sina si doua perforatii OFFICE buc. 100.00 0,35 35,00 6,65

Products, roz (21104211-13)

pagina 1 / 3

 797638

             
11 Folie protectie OFFICE Products, A4, coaja portocala, 40 buc. 5.00 6,53 32,65 6,20
 
 
microni, 100 file/set (21141215-90)
 
 
12 Folie protectie OFFICE Products, A4, coaja portocala, 40 buc. 20.00 6,51 130,20 24,74
 
 
microni, 100 file/set (21141215-90)
 
13 Marker whiteboard Eco, varf rotund, albastru (SOIS535A) buc. 104.00 1,33 138,32 26,28
 
 
14 Marker whiteboard Eco, varf rotund, negru (SOIS535N) buc. 2.00 1,33 2,66 0,51
 
 
15 Marker whiteboard Eco, varf rotund, rosu (SOIS535R) buc. 2.00 1,33 2,66 0,51
 
16 Notite adezive OFFICE Products,  51 x 76 mm, galben pal,  buc. 5.00 1,65 8,25 1,57
 
 
100 file (14047511-06)
 
 
17 Organizator de birou DONAU Clasic VII, 6 compartimente, buc. 2.00 30,67 61,34 11,65
 
 
155 x 105 x 101 mm, transparent (7476001-99)
 
18 Panou din pluta Bi-Office, 60 x 90 cm, rama lemn buc. 1.00 32,96 32,96 6,26
 
 
(GMC070012010)
 
 
19 Pioneze color Eco, tinte pentru pluta , 40 buc/cutie buc. 1.00 2,16 2,16 0,41
 
 
(SOBO612)
 
20 Pix fara mecanism Eco, varf de 1 mm, albastru (SOIS405A) buc. 110.00 0,33 36,30 6,90
 
 
21 Plic C4 (229 x 324 mm), alb, siliconic, 10/set buc. 2.00 2,15 4,30 0,82
 
 
(15223619-14)
 
 
22 Tus pentru stampila Pelikan, cu picurator, 28 ml, negru buc. 1.00 6,93 6,93 1,32
 
(351197)

注意,项目描述有时是在总价格之后。问题是,项目之间的空间不是偶数,它是可变的,例如,位置8和9几乎是相连的,而20和21位置之间有很大的空间。

有人帮了我,只得到了第一行

代码语言:javascript
复制
\d{1,2}(.*)(\d+\.\d+\s+)(\d+\,\d+\s{0,1}){3}

这就是我因为语法不均衡而陷入困境的地方。

它只得到第一行。例如:‘16 Notite办公产品,51x76毫米,galben pal,buc。5.00 1,65 8,25 1,57

100文件(14047511-06)‘它只提供16个Notite办公产品,51x76mm,galben pal,buc。5.00 1,658,25,57,但不是100档案(14047511-06)。完整的发票描述是Notite办公产品,51×76毫米,galben pal,100个文件(14047511-06),当转换从pdf到文本-这是我如何得到的文件。

还需要提取最后一部分并合并第一个部分以获得完整的项目描述。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-11-11 07:42:14

试试这个正则表达式:

代码语言:javascript
复制
\d{1,2}(.*)(\d+\.\d+\s+)(\d+\,\d+\s?){3}([\n ]+[^(\n]*\([^)]+\)(?=\n))?

regex101测试

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64781679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档