Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 用于匹配跨平台换行符的正则表达式_Python_Regex_Cross Platform_Eol - Fatal编程技术网

Python 用于匹配跨平台换行符的正则表达式

Python 用于匹配跨平台换行符的正则表达式,python,regex,cross-platform,eol,Python,Regex,Cross Platform,Eol,我的程序可以接受换行符为\n、\r\n或\r的数据(例如Unix、PC或Mac样式) 构造与编码匹配的正则表达式的最佳方法是什么 或者,我可以在输入上使用universal_新行支持,但现在我想看看正则表达式是什么。我想要精确的时候使用的正则表达式是“\r\n?| \n” 当我不关心一致性或空行时,我使用“[\r\n]+”,我想象它使我的程序速度提高了0.2%。这种模式可以简化为\r?\n,以获得一点性能提升,因为你可能不必处理旧的Mac风格(从2002年2月起就不支持OS 9).请注意,\r是

我的程序可以接受换行符为\n、\r\n或\r的数据(例如Unix、PC或Mac样式)

构造与编码匹配的正则表达式的最佳方法是什么


或者,我可以在输入上使用universal_新行支持,但现在我想看看正则表达式是什么。

我想要精确的时候使用的正则表达式是
“\r\n?| \n”


当我不关心一致性或空行时,我使用
“[\r\n]+”
,我想象它使我的程序速度提高了0.2%。

这种模式可以简化为
\r?\n
,以获得一点性能提升,因为你可能不必处理旧的Mac风格(从2002年2月起就不支持OS 9).

请注意,
\r
是旧的Mac风格(我所说的“旧”是指“OS9及之前”)。任何运行OS X的Mac(又称1999年以后的Mac)都会像任何其他Unix一样使用
\n
。什么时候匹配换行与使用
'$'
匹配行尾比较有用?@tonfa:当通过正则表达式将文件拆分为行时。@php太多,但str.splitlines()不能正常工作?@tonfa:好,所以不需要经常使用它,但是很高兴知道其他没有方便函数的语言,如
splitlines()
。通常当我不关心换行时,我也不关心空格。是什么让你的程序更快?