我有一个(.Net)字符串,其中包含LFCR,CR,LF和CRLF换行符的变体,我想用一个CRLF替换前面的三个字符串,但保持现有的CRLF不变。
基本上我想要的是找到'\ n \ r','\ n'和'\ r'并用'\ r \ n'替换它们的方法,但要确保每个都不匹配/替换正确的'\ r \ n'(CRLF)或用'\ r \ n'替换'\ n \ r'。
答案 0 :(得分:3)
负面前瞻,负面观察
我会建议:
\n?\r(?!\n)|(?<!\r)\n
\n?\r(?!\n)
匹配\n\r
或\r
,但前提是否定前瞻(?!\n)
能够断言以下内容不是\r
(?<!\r)\n
匹配\n
之前没有的所有\r
<强>参考强>