【发布时间】:2012-05-29 14:03:06
【问题描述】:
我整天都在找这个,这是我找到的最接近的useful ref。
我的问题:大文件是从封闭系统导入的(不能从源头更改),需要导入。这些文件是 |分隔并在每行末尾有一个 CRLF
(直到最后一个)。现在他们发现在文本中包含一个可以包含 CR 和 CRLF 文本的新类型很有趣(<br> 的 instedd)。
所以在我可以在我们的系统中处理这个文件之前,我需要做的是替换所有没有以 | 开头的 CRLF 和 CR 事件。到<br>,这样每一行都以000|之类的代码开头... 600|
我在记事本++中最接近的:
查找:(?<![\|])[\r\n]+$
替换:<br>
问题是它不会为每个 crlf 提供 <br>,在 cr 之后错过 crlf...其他选择 |crlf 的尝试也完全忘记了 CR。
任何想法都非常感谢。请记住,文件可能超过 500MB(有点复杂)
文件摘录:
000|709076|153943|11||1|CRLF
300|709076|153943|11|4|20000729||Majo509|CRLF
500|709076|153943|11|6|3-3BNME|20000729|||21.13|4||20120509|CRLF
600|709076|153943|11||SBV|7103||||20120509|CRLF
600|709076|153943|11||SBV|7105||||20120509|CRLF
600|709076|153943|11||SBV|7607||||20120509|CRLF
600|709076|153943|11||MC||EVALUATIEROOSTER NIET INGEVULD :CR
CRLF
------------------------------CR
CRLF
CRLF
Gezien U het evaluatierooster niet heeft ingevuld, blijft CR
CRLF
CRLF
|||20120509|CRLF
600|709076|153943|11||SBV|7517||||20120509|CRLF
000|709209|154072|9||1|Dne|LA1349|3100||L|20120509|CRLF
300|709209|154072|9|3|20HEM-AT20120509|CRLF
500|709209|154072|9|6|3-3BNME|20000908|||15.4|3||20120509|CRLF
600|709209|154072|9||SBV|7103||||20120509|CRLF
600|709209|154072|9||MC||AFSCHAFFING VAN DE EVOOR HET CR
CRLF
(DE) GEBOUW(EN) CR
CRLF
CR
CRLF
indien U huurder of gebruiker bent.|||20120509|CRLF
600|709209|154072|9||MC||DIEFSTAL CRLF
...
要求的结果:(粗略的复制粘贴作业;))
000|709076|153943|11||1|CRLF
300|709076|153943|11|4|20000729||Majo509|CRLF
500|709076|153943|11|6|3-3BNME|20000729|||21.13|4||20120509|CRLF
600|709076|153943|11||SBV|7103||||20120509|CRLF
600|709076|153943|11||SBV|7105||||20120509|CRLF
600|709076|153943|11||SBV|7607||||20120509|CRLF
600|709076|153943|11||MC||EVALUATIEROOSTER NIET INGEVULD :<BR><BR>---------------------<BR><BR><BR>Gezien U het evaluatierooster niet heeft ingevuld, blijft <BR><BR>||20120509|CRLF
600|709076|153943|11||SBV|7517||||20120509|CRLF
000|709209|154072|9||1|Dne|LA1349|3100||L|20120509|CRLF
300|709209|154072|9|3|20HEM-AT20120509|CRLF
500|709209|154072|9|6|3-3BNME|20000908|||15.4|3||20120509|CRLF
600|709209|154072|9||SBV|7103||||20120509|CRLF
600|709209|154072|9||MC||AFSCHAFFING VAN DE EVOOR HET <BR><BR>(DE) GEBOUW(EN) <BR><BR><BR><BR>indien U huurder of gebruiker bent.|||20120509|CRLF
600|709209|154072|9||MC||DIEFSTAL CRLF
【问题讨论】:
-
自我和谷歌员工的注意事项;对于更简单的替换要求,请参阅 Notepad++ / Edit / EOL Conversion / 然后选择所需的格式,例如 unix/mac 或 windows 或 old-mac。
标签: regex text import notepad++ regex-negation