我有一个相当大的文本文件,有一堆缺少的换行符,这意味着它是一个烂摊子.我需要将其分解为适当的行.
文本现在看起来像这样:
12345 This is a chunk 23456 This is another chunk 34567 This is yet another chunk 45678 This is yet more chunk 56789 Yet another piece of text
我需要一个正则表达式,它将在每组五位数之前插入一个换行符(CR/LF对),结果如下:
12345 This is a chunk 23456 This is another chunk 34567 This is yet another chunk 45678 This is yet more chunk 56789 Yet another piece of text
它可以在第一组数字之前插入一个数字; 我可以处理.
有任何想法吗?谢谢.
非常简单(但不是尽可能"浮华",因为我懒得使用前瞻):
s/(\d{5})/\r\n\1/gs
s/(?<=\D)(\d{5})(?=\D|$)/\n\1/g
它可能取决于手头的编程语言,但在Windows上用Perl和Python代替\n
,\r\n
因此在这种情况下\n
,\r\n
在上面的正则表达式中替换它是错误的.