Модераторы: ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> что делает регулярка? 
:(
    Опции темы
Loki
Дата 19.12.2008, 19:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 244
Регистрация: 9.7.2006

Репутация: нет
Всего: нет



вот такая...
Код

split(/\|/, $vector);

т.е. у меня есть строчка, что с ней произойдет?
PM MAIL   Вверх
Imple
Дата 19.12.2008, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1546
Регистрация: 14.9.2007
Где: Алма-Ата

Репутация: нет
Всего: 87



Строчка разобъется на части в местах вхождения "|" и функция вернет массив состоящий из полученных частей. С самой строчкой ничего не станет. 

Только вот какое это имеет отношение к операционным системам *NIX? Не ясно. Тему переношу.


--------------------
Не шалю, никого не трогаю, починяю сервер.
PM WWW ICQ Skype GTalk Jabber   Вверх
Loki
Дата 20.12.2008, 09:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 244
Регистрация: 9.7.2006

Репутация: нет
Всего: нет



А подскажите с регуляркой что-бы найти следующую строчку или строчку до определенного значения, к примеру можно сделай поиск по файлу grep'ом или в перле //gm найти там определенную строчку.
PM MAIL   Вверх
amg
Дата 20.12.2008, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1145
Регистрация: 3.8.2006
Где: Новосибирск

Репутация: нет
Всего: 50



Цитата(Loki @  20.12.2008,  09:04 Найти цитируемый пост)
А подскажите с регуляркой что-бы найти следующую строчку или строчку до определенного значения, к примеру можно сделай поиск по файлу grep'ом или в перле //gm найти там определенную строчку.
Вопрос не вполне понятен. Приведите, пожалуйста, пример исходных данных и что их них нужно получить.

PM MAIL   Вверх
Loki
Дата 20.12.2008, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 244
Регистрация: 9.7.2006

Репутация: нет
Всего: нет



Ну к примеру мне нужно искать данные в массиве\строке между разделителями.
Код

@array[0] ="name : .... model: .... id: ...."

у меня есть строка с патерном
Код

 my $template = qr/(name|model|id)/i;

как искать по патернам в массиве и читать сами значения name, model и id
PM MAIL   Вверх
amg
Дата 20.12.2008, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1145
Регистрация: 3.8.2006
Где: Новосибирск

Репутация: нет
Всего: 50



По-прежнему многое не понятно в постановке задачи. Лучше бы Вы привели пример реальных данных, и что из них нужно получить. 

Попробуем так
Код
$array[0] ="name : aaa model: bbb id: ccc";
my $template = qr/(?:name|model|id)/i;
while ($array[0] =~ /($template)((?:.(?!$template))*.)/g) {
  print "$1 = '$2'\n";
}



Это сообщение отредактировал(а) amg - 20.12.2008, 12:37
PM MAIL   Вверх
Loki
Дата 20.12.2008, 14:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 244
Регистрация: 9.7.2006

Репутация: нет
Всего: нет



опс, получилось что у меня все-таки не все в одной строке, а то что я читал построчно, а потом принтил вот так 
print " $array[0]\t"
т.е. как несколько строк последовательно в одну записать?
например было
name : 
aaa
 model:
 bbb 
id: ccc
стало name : aaa model: bbb id: ccc
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Регулярные выражения | Следующая тема »


 




[ Время генерации скрипта: 0.0457 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.