Кодировка тут не при чем, а вот переводы на новую строку бывают разные. По умолчанию в юниксовых осях это CR, а в винде CRLF -- впрочем, обычно это настраивается в редакторе. Если 1.txt генерируется скриптом, то опять же это поддается регулированию.
А почему бы просто не исправить регулярку? Чтобы там было не \r\n
, а, например, \r?\n
?