Регулярное выражение для соответствия кросс-платформенным символам новой строки

Моя программа может принимать данные с символами новой строки, \ r или \ r (например, стили Unix, ПК или Mac)

Каков наилучший способ создания регулярного выражения, которое будет соответствовать любой кодировке?

В качестве альтернативы, я мог бы использовать поддержку universal_newline для ввода, но теперь яМне интересно посмотреть, каким будет регулярное выражение.

 tonfa26 авг. 2009 г., 03:21
@ слишком много php, но не будетt str.splitlines () работает так же хорошо?
 too much php26 авг. 2009 г., 03:14
@tonfa: при разбиении файла на строки с помощью регулярных выражений.
 tonfa26 авг. 2009 г., 03:10
Когда полезно сопоставлять переводы строк с использованием'$' соответствовать концу строки?
 too much php26 авг. 2009 г., 03:25
@tonfa: хорошо, так чтоне нужно часто, но этохорошо знать для других языков, которые неT имеют удобные функции, такие как.splitlines()
 Chris Lutz26 авг. 2009 г., 03:07
Просто заметьте,\r этостарый Стиль Mac (и "старый» Я имею в виду "ОС 9 и раньше). Любой Mac под управлением OS X (например, сделанный после 1999 года) будет использовать\n как и любой другой Unix.

Ответы на вопрос(2)

\r?\n для небольшого прироста производительности, как вы, вероятно, неприходится иметь дело со старым стилем Mac (OS 9 не поддерживается с февраля 2002 года).

Решение Вопроса

"\r\n?|\n"

Когда я'Я не беспокоюсь о последовательности или пустых строк, я использую"[\r\n]+"Я думаю, это делает мои программы где-то на 0,2% быстрее.

 sehe13 сент. 2017 г., 08:29
Что делает ваши программы быстрее?
 Brad Gilbert30 авг. 2009 г., 02:12
Обычно, когда яЯ не беспокоюсь о переводе строк, яЯ также не обеспокоен пробелами.

Ваш ответ на вопрос