|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Saigo 2:5020/400 27 Aug 2001 16:38:32 To : All Subject : regex - нужна помощь --------------------------------------------------------------------------------
пожалуйста, помогите разобраться:
# формат вводимых модификаторов
# %f<заглавность><падеж><символ от strftime>
# <заглавность> = i (строчные) | q (с прописной) | Q (прописные)
# <падеж> = o (именительный) | v (родительный) | J (дательный) |
# K (винительный) | L (творительный) | N (предложный)
@mod_zagl=('i','q','Q');
@mod_pad=('o','v','J','K','L','N');
@mod_old=('a','A','b','B','c','C','d','D','e','E','g','G','h','H','I','j','k
','l','m','M','n','O','p','P','r','R','s','S','t','T','u','U','V','w','W','x
','X','y','Y','z','Z','+','%');
пишу примерно так:
while ($format=~m/(%f([@mod_zagl]?)([@mod_pad]?)([@mod_old]?)(\S+)\b)/g)
$full_mod=$1;
$zagl_mod=$2;
$pad_mod=$3;
$rod_mod=$4;
$after_mod=$5;
...
}
мне хочется, что в full_mod был модификатор целиком, в zagl_mod - указатель
заглавности, в pad_mod - указатель падежа, в rod_mod - "родная" для strftime
буковка (например, B), в after_mod - всё, что прилеплено к модификатору
вплотную справа (до пробела или конца строки). то, что написано выше,
работает не во всех случаях, там явно есть ошибка, но вот в чём она состоит
и как её исправить?
заранее огромное спасибо за ответы
Евгения
--- ifmail v.2.15dev5
* Origin: Peterlink News System (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/20753e2d2373a.html, оценка из 5, голосов 10
|