![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| shootnix |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 3.9.2005 Где: Казахстан Репутация: 2 Всего: 2 |
Здрастуйтэ.
Возникла проблема определения конца строки - как это реализовано в Perl? Вот знаю что к примеру в Delphi точно что-то такое есть... а в Perl? А вообще, вопрос не из философский побуждений задан - есть задача следующего характера: Надо найти все данные (строку), помещённые между каким-то символом, стоящим строго в начале строки и строго в конце. Использование "\n" не совсем подходит, т.к. это, по сути, символ НОВОЙ строки, а мне нужно конец старой. Плиз хелп. Можно просто ссылку на доку какую-нить. Или сразу код ;) |
|||
|
||||
| trigger |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 103 Регистрация: 12.7.2006 Репутация: нет Всего: нет |
дай мыло вышлю доку по регулярке в перл
или вот http://wmate.ru/ebooks/book19.html тока регица нада Это сообщение отредактировал(а) trigger - 20.9.2006, 17:34 |
|||
|
||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 26 Всего: 37 |
$ - символ указывающий на конец строки ;)
-------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| amg |
|
||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
Ну как такого может не быть в Perl'е, языке, для которого основная единица данных - именно строка.
Это сообщение отредактировал(а) amg - 21.9.2006, 07:31 |
||||||
|
|||||||
| shootnix |
|
||||||||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 3.9.2005 Где: Казахстан Репутация: 2 Всего: 2 |
trigger,
Nab,
Аха... ток чтот не работает, может регулярка сложная аль ошиба... ещё попробую самостоятельно разобраться ... ну уж если что - к вам ;) amg,
Так ведь в этом и есть суть моего вопроса - Надо чтобы этим Е был признак конца строки - есть такое в Perl??
Опять-таки не совсем верно -- "\n" - это признак перехода на другую строку а не конкретно признак конца данной строки. К примеру, если файл содержит только одну строку, то, скорее всего, в конце "\n" просто не будет. Попробуйте сами - напишите строку в файл без нажатя на Ентер и проверьте на наличиев этой строке признака "\n" Добавлено @ 19:41 Да, кстати, если не ошибаюсь, автор этой книги (http://wmate.ru/ebooks/book19.html ) - Perldoc |
||||||||
|
|||||||||
| amg |
|
||||||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
Так, давайте по-порядку.
Был поставлена задача:
shootnix, чем не устраивает это решение?
Приведите, пожалуйста, кусок своих данных, и то, что должно из них получиться, тогда будет понятнее. |
||||||
|
|||||||
| shootnix |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 3.9.2005 Где: Казахстан Репутация: 2 Всего: 2 |
amg, ОК я, по-моему, уже сказал что надо - зачем разжигать дискуссии?
Итак, снова формулирую задачу: Дано: текст такого плана:
Надо: Вытащить этот текст после @ (символ условный - какая, в сущности, разница?) весь без остатка Сопутствующие условия: Текст может содержать какие угодно символы: буквы, цифры и т.п. В чем тогда проблема? Если использовать "\n" - последняя строка-таки не вытаскивается, т.к, "\n" - это символ перехода на новую строку а не конец данной. |
|||
|
||||
| Nab |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 582 Регистрация: 25.3.2006 Где: Kiev Репутация: 26 Всего: 37 |
А текст это вы из файла получаете, или откуда?
Потому как проблема эта может возникнуть только если у вас весь текст находиться в одной переменной, которую и нужно распарсить... -------------------- Чтобы правильно задать вопрос нужно знать больше половины ответа... Perl Community FREESCO in Ukraine |
|||
|
||||
| shootnix |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 3.9.2005 Где: Казахстан Репутация: 2 Всего: 2 |
из файла да -- текст парсю построчно так что разницы нет -- ладно раз логически не получается мыслить, давайте в лоб: как найти последний символ в строке? вот теперь этотсимвол будет "признаком конца строки" -- вот... тогда надо вырезать строку от символа "@", например (не включительно) и до этого последнего символа (включительно).
|
|||
|
||||
| amg |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: 38 Всего: 50 |
shootnix, проверьте, пожалуйста, (запустив из коммандной строки), что напечатает
Добавлено @ 11:42 Или нужен обязательно отдельный скрипт? Добавлено @ 11:55 Сейчас проверил в винде, последняя конструкция вроде работает, а за предыдущие приношу извинения: они в винде не работают из-за "неправильных" кавычек (см. здесь) Это сообщение отредактировал(а) amg - 23.9.2006, 09:11 |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |