Forum Webscript.Ru

Программирование => Perl => Тема начата: C++ от 13 Января 2003, 18:42:52

Название: Конец строки. Help, срочно!
Отправлено: C++ от 13 Января 2003, 18:42:52
Из формы пишу в файл строки.
Потом вывожу их в другом html, делаю chomp а символ конца строки не удаляется, в чем проблема понять не могу, может кодировка, может еще что...
подскажите, очень срочно...
делаю так
chomp @str
и так
chomp $str[$i]
и так пробовал
$str[$i]=~s/\\n//gm;
и все равно символы конца строки не удаляет... а ой как надо...
заранее спасибо!
Название: Конец строки. Help, срочно!
Отправлено: NeoNox от 13 Января 2003, 19:02:44
perldoc -f chomp
Очень быстро и понятно.
Чомпни данные перед занесением их в массив.
Или при выводе...
Если не понятно- кусок кода вывода в студию.
Название: Конец строки. Help, срочно!
Отправлено: C++ от 13 Января 2003, 23:37:18
Вот в этом куске кода символы конца строки удаляются (в файле простые слова)
open(F,$nFile) or die;
flock(F,1);
my @n=;
chomp @n;
@n=sort{$a cmp $b}@n;
for(my $i=0;$i<@n;$i++)
{print \'\'}
print \'\';
close(F);
а вот здесь не удаляется (в файле урлы)
open(F,$f) or die;
flock(F,1);
my @urls=;
@urls=sort{$a cmp $b}@urls;
chomp @urls;
close(F);
for(my $i=0;$i<@urls;$i++)
{
my @str=split("-",$urls[$i],3);
print \'\';
print "$str[2]$str[0]$str[1]"
}
print \'\';
все выводится в хтмл...
что не так? ИМХО в обоих случаях одинаково....
причем не удаляет ни chomp ни регулярное выражение
$str[$i]=~s/\\n//gm;
ребят, подскажите плиз хоть в каком направлении искать...
Название: Конец строки. Help, срочно!
Отправлено: C++ от 13 Января 2003, 23:59:51
может при вводе нужно кодировку кук-то выставить....
и еще
когда делаю chop то \\n удаляется после второго применения функции....
Название: Конец строки. Help, срочно!
Отправлено: Chs от 14 Января 2003, 09:10:44
Попробуй
$/ = "\\r\\n";
перед chomp поставить.
Название: Конец строки. Help, срочно!
Отправлено: C++ от 14 Января 2003, 21:20:14
Chs сенкс, действительно так и есть...