URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 9062
[ Назад ]

Исходное сообщение
"Что происходит в строке"

Отправлено New_Birth , 05-Мрт-11 12:59 
Скажите пожалуйста, что происходит в данныхстроках?

$str =~ s/\"|\'/\~/g;
(my @datas) = split(/ +/,$str);


Содержание

Сообщения в этом обсуждении
"Что происходит в строке"
Отправлено phpcoder , 05-Мрт-11 13:08 
> $str =~ s/\"|\'/\~/g;

" или ' на ~

Можно было записать чуть проще (правда не уверен насчет экранирования тильды):

> $str =~ s,"|',~,g;


"Что происходит в строке"
Отправлено New_Birth , 05-Мрт-11 13:29 
>> $str =~ s/\"|\'/\~/g;
> " или ' на ~
> Можно было записать чуть проще (правда не уверен насчет экранирования тильды):
>> $str =~ s,"|',~,g;

Спасибо большое.


"Что происходит в строке"
Отправлено erera22 , 05-Мрт-11 13:26 
> Скажите пожалуйста, что происходит в данныхстроках?
> $str =~ s/\"|\'/\~/g;
> (my @datas) = split(/ +/,$str);

1) Строка $str =~ s/\"|\'/\~/g; означает: выполнить замену в строке $str всех вхождений символов " или ' на тильду
2) Разбить строку $str в массив, используя один или более пробелов как разделитель (корректнее писать \s+, да и my @datas в скобки не надо...)


"Что происходит в строке"
Отправлено New_Birth , 05-Мрт-11 13:30 
>> Скажите пожалуйста, что происходит в данныхстроках?
>> $str =~ s/\"|\'/\~/g;
>> (my @datas) = split(/ +/,$str);
> 1) Строка $str =~ s/\"|\'/\~/g; означает: выполнить замену в строке $str всех
> вхождений символов " или ' на тильду
> 2) Разбить строку $str в массив, используя один или более пробелов как
> разделитель (корректнее писать \s+, да и my @datas в скобки не
> надо...)

Огромное спасибо )