Perl Regular Expressions
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Perl Regular Expressions - 2004-07-07 00:31:46
|
|
|
Preatorian
Сообщений: 48
Оценки: 0
Присоединился: 2004-04-16 00:41:45
|
Доброго времени суток всем!
Почему - не пойму?
$s=''abbbbb''; $s=~ s/a.*b/c/; При таком регулярном выражении ответ только "с" (без кавычек!) Это понятно, так как s/// заменяет a.*b на c
$s=~ s/a.*?b/c/; При таком рег выраж ответ cbbbb Ведь по идее должно быть тоже самое т.к. см. выше
В чем и где я ошибся? или не допонял.
Заранее спасибо всем!!
|
|
|
Perl Regular Expressions - 2004-07-07 01:07:05
|
|
|
Mazdack
Сообщений: 58
Оценки: 0
Присоединился: 2004-03-26 18:02:46
|
хе, ну смотри: ~s/a.*?b/c означает, что надо заменить а и один след символ (любой) на с, а всю остальную часть строки оставить как есть. ну чтоб легче понять, поставь скобки: ~s/a(.*)?b/c - то, что в скобках соотв любому кол-ву любых символов, но потом ведб стоит ?, значит кол-во любых символов сокращается до 0 или 1.
|
|
|
Perl Regular Expressions - 2004-07-08 00:00:38
|
|
|
Preatorian
Сообщений: 48
Оценки: 0
Присоединился: 2004-04-16 00:41:45
|
Значит получается что может быть 2 совпадения ab и abb? Да собственно не важно наверно это,ведь в книге написано s=~ s/text1/text2/ происходит замена text1 на text2, почему здесь остались другие буквы кроме c ????[sm=em88.gif][sm=em88.gif][sm=em88.gif]
Пример взят из книги Лукайкого А.В. Атака из Internet
|
|
|
Perl Regular Expressions - 2004-07-08 00:30:02
|
|
|
Mazdack
Сообщений: 58
Оценки: 0
Присоединился: 2004-03-26 18:02:46
|
никаких 2 совпадений быть не может. все работает токо однозначно! :) перл - штука умная.. :) в том, что ты написал, происходит замена текст1 на текст2, но ОСТАЛЬНАЯ ЧАСТЬ СТРОКИ ОТСТАЕТСЯ БЕЗ ИЗМ.! короче для изучения перла, эта книга явно не подходит, чтобы получить норм. знания, читай книжку O'REILLY "Изучаем Perl", авторы Рэндал Л.Шварц, Т. Феникс, в народе - "Лама-бук", или сразу уж "Программирование на Перл", того же издательства, но авторы Ларри Уолл(!) и др., в народе "Камел-бук"! а коли не нужно учить перл, а просто хочешь чтоб что-то работало, пиши на mazdack@inbox.ru
|
|
|
Perl Regular Expressions - 2004-07-08 01:03:31
|
|
|
Preatorian
Сообщений: 48
Оценки: 0
Присоединился: 2004-04-16 00:41:45
|
quote:
—————-<BR>Цитата: Дата:08.07.2004 0:30:02, Автор:Mazdack :: СТРОКИ ОТСТАЕТСЯ БЕЗ ИЗМ.! —————-
Вот теперь понятно. Что то я стормозил [sm=9.gif]
СПАСИБО!!!
|
|
|
|
|