可靠地替换换行符
本文关键字:换行符 替换 | 更新日期: 2023-09-27 18:10:52
我有一个(. net)字符串,其中包含LFCR, CR, LF和CRLF换行符的变体,我想用一个CRLF替换前面的三个,但保留现有的CRLF不变。
基本上我想要的是一种方法来找到''n'r', ''n'和''r',并将它们替换为一个''r'n',但要确保每个都不匹配/替换适当的''r'n' (CRLF)或替换''n'r'与两个''r'n'。
负向后看
我的建议是:
'n?'r(?!'n)|(?<!'r)'n
- 在交替'|'的左侧,
'n?'r(?!'n)
匹配'n'r
或'r
,但前提是负向前看(?!'n)
能够断言后面的不是'r
- 右边的
(?<!'r)'n
匹配前面没有'r
的所有
'n
- 零长度断言的前向和后向
- 掌握向前看和向后看