O regex para um caractere de espaço em branco é, obviamente, \s
. No entanto, como você deseja um caractere que não seja espaço em branco, use \S
! Portanto, sua regex para substituição seria \S\n\r\S
.
EDITAR:
#!/usr/bin/perl
use strict; use warnings;
my $pattern = "xxxxxxxxxxxxxxxxxxxy\n\ryxxxxxxxxxxxxxxxxxxx \n\r xxxxxxxxxxxxxxxxxxxy\n\ryxxxxxxxxxxxxxxxxxxx";
$pattern =~ s/(\S)(\n\r)(\S)/$1$3/g;
print "$pattern\n";
exit;
resultado:
xxxxxxxxxxxxxxxxxxxyyxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxyyxxxxxxxxxxxxxxxxxxx
Eu alterei o regex para substituir por $1$3
, para que você mantenha os caracteres que \S
correspondem.