我有一个包含以下文字的文字文件。此文件中的许多行都有line break
。
我需要使用退格键并使用前一行文本连接到以your
开头的行
1023456;jjdss.D.djDJ;2345;for your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for
your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
1023456;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for
your account;BR
4567891;jjdss.D.djDJ;2345;for
your account;BR
期望的结果
1023456;jjdss.D.djDJ;2345;for your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
1023456;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for your account;BR
我已经使用notepad++
宏来执行此操作,但结果是一行文本,文件中包含所有1000行。
任何帮助将不胜感激
答案 0 :(得分:0)
如果你想使用一个正则表达式,我会通过捕获所有'for'实例来接近它,后面跟一个换行符或回车符,并用'for'替换它们。
例如,如果我在JavaScript中处理您的问题,我将使用以下内容:
var str = `1023456;jjdss.D.djDJ;2345;for your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for
your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
1023456;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for
your account;BR
4567891;jjdss.D.djDJ;2345;for
your account;BR`;
var regex = /(for(\n|\r))/gm;
var res = str.replace(regex, 'for ');
这将导致:
1023456;jjdss.D.djDJ;2345;for your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for your account;BR
2345678;jjdss.D.djDJ;2345;for your account;BR
1023456;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for your account;BR
4567891;jjdss.D.djDJ;2345;for your account;BR
我创建了一个fiddle来说明这一点。
如果您希望获得更多正则表达式方面的经验,那么有一些很好的答案可以帮助您,例如this one可以很好地解释它们以及链接到一些有用的资源。