Как на Perl добавить символы к строке по условию?

M2
На сайте с 11.01.2011
Offline
321
858

Т.е. такое дело.... читаем строки из файла, что-то там с ними делаем.... а потом то, что получилось, нужно ещё раз обработать - добавить символ перевода каретки, но не везде, а по условию... т.е. если встретили конкретные символы, то после них добавляем \r\n.

Подскажите, как такое сделать? (в том, что это сделать можно - даже не сомневаюсь, на то и перл...)

Спасибо!

------------------- Крутые VPS и дедики. Качество по разумной цене (http://cp.inferno.name/view.php?product=1212&gid=1) VPS25OFF - скидка 25% на первый платеж по ссылке выше
VO
На сайте с 27.07.2008
Offline
127
#1

Замените "конкретные символы" на "конкретные символы" + "перевод строки"

bbon
На сайте с 01.04.2006
Offline
127
#2
mark2011:
Т.е. такое дело.... читаем строки из файла, что-то там с ними делаем.... а потом то, что получилось, нужно ещё раз обработать - добавить символ перевода каретки, но не везде, а по условию... т.е. если встретили конкретные символы, то после них добавляем \r\n.


my $s = 'xaaxbxcddd';
$s =~ s/([ab])/$1\r\n/g;
print $s;

================

xa

a

xb

xcddd

M2
На сайте с 11.01.2011
Offline
321
#3

bbon,

спасибо!


$row =~ s/\/[0-9]{2}/$1\r\n/g;
print $row;

ответ такой:


Use of uninitialized value $1 in concatenation (.) or string at ./script line 14, <$fh> line 58.

тем не менее, работает как надо.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий