Regex 如何使用正则表达式格式化此txt文件中的前7行
我有一个文本文件,数据格式如下。了解了如何格式化文件的第二部分,以便将其上载到db表中。撞到墙上,试图让前7行以相同的方式格式化 如果不明显,我会尝试使用完全相同的列数对其进行管道分隔,以便可以轻松地将其上载到dbRegex 如何使用正则表达式格式化此txt文件中的前7行,regex,Regex,我有一个文本文件,数据格式如下。了解了如何格式化文件的第二部分,以便将其上载到db表中。撞到墙上,试图让前7行以相同的方式格式化 如果不明显,我会尝试使用完全相同的列数对其进行管道分隔,以便可以轻松地将其上载到db Year: 2019 Period: 03 Office: NY Dept: Sales Acct: 111222333 SubAcct: 11122234-8 blahblahblahblahblahblahblah Status: Pending 1000 AAAAAAAAAA
Year: 2019 Period: 03
Office: NY
Dept: Sales
Acct: 111222333
SubAcct: 11122234-8
blahblahblahblahblahblahblah
Status: Pending
1000
AAAAAAAAAA
100,000.00
2000
BBBBBBBBBB
200,000.00
3000
CCCCCCCCCC
300,000.00
4000
DDDDDDDDDD
400,000.00
一些好心的人回答了我关于底部的问题,使用下面的代码,我可以将其格式化成这样-
(.*)\r?\n(.*)\r?\n(.*)(?:\r?\n|$)
substitute with |||||||$1|$2|$3\n
|||||||1000|AAAAAAAAAA|100,000.00
|||||||2000|BBBBBBBBBB|200,000.00
|||||||3000|CCCCCCCCCC|300,000.00
|||||||4000|DDDDDDDDDD|400,000.00
只需要帮助格式化顶部部分-看起来像这样,这样整个文件就可以匹配相同数量的列
Year: 2019|Period: 03|Office: NY|Dept: Sales|Acct: 111222333|SubAcct: 11122234-8|blahblahblahblahblahblahblah|Status: Pending|||
我可以对文件进行多次传递以获得所需的最终结果。我已经帮助您回答了前面的问题,因此我现在将重点放在文件的第一部分 您可以使用此正则表达式:
\n|\b(?=Period)
并使用|
作为替换字符串
如果您不想在句点
之前使用上一个空格,则可以使用:
\n|\s(?=Period)
谢谢你,费德里科!!如果你能看看-1,有两件事。如何仅将此模式应用于前7行(因为其余行已格式化)。如何在其末尾添加3个管道符号(这样整个txt文件将具有相同的列数)。非常感谢!