匹配跨平台换行符的正则表达式
我的程序可以处理包含换行符的数据,这些换行符可以是\n、\r\n或者\r(比如Unix、PC或Mac的格式)
有没有什么好的方法来写一个正则表达式,能够匹配这些不同的换行符呢?
另外,我也可以在输入时使用通用换行符的支持,但我现在想看看正则表达式应该怎么写。
2 个回答
10
这个模式可以简化为 \r?\n
,这样可以稍微提高性能,因为你可能不需要处理旧版Mac的格式(OS 9自2002年2月起就不再支持了)。
99
我在需要精确匹配的时候,会用这个正则表达式:"\r\n?|\n"
。
而当我不太在乎格式一致性或者空行的时候,我会用这个:"[\r\n]+"
,我觉得这样可以让我的程序快个大约0.2%。