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

Исходное сообщение
"Заглавные буквы"

Отправлено man , 27-Май-05 10:10 
Граждане! подскажите -- есть предложение - все большие буквы - надо в этом предложении первую и после первой кавычки оставить большими, а все остальнве -- маленькими/

Содержание

Сообщения в этом обсуждении
"Заглавные буквы"
Отправлено Brainbug , 27-Май-05 12:59 
>Граждане! подскажите -- есть предложение - все большие буквы - надо в
>этом предложении первую и после первой кавычки оставить большими, а все
>остальнве -- маленькими/

Kak nibud tak mozno:
[test@test perl] cat -n 0005.pl
1 #!/usr/bin/perl -w
2
3 use strict;
4 use warnings;
5
6 my $line;
7 while ($line=<STDIN>){
8    print $line;
9    $line=lc($line);
10    if ($line=~/"/){
11            $line=~s/^([[:word:]])(.*)$/uc($1).$2/e;
12            $line=~s/^(.*?")(.)(.*)$/$1.uc($2).$3/e;
13    } else {
14            $line=~s/^([[:word:]])(.*)$/uc($1).$2/e;
15            $line=~s/^([[:^word:]]*)([[:word:]])(.*)$/$1.uc($2).$3/e;
16    }
17    print $line;
18 }

[test@test perl]$ echo 'f' | ./0005.pl
f
F
[test@test perl]$ echo 'f"' | ./0005.pl
f"
F"
[test@test perl]$ echo 'f"f' | ./0005.pl
f"f
F"F
[test@test perl]$ echo '"f' | ./0005.pl
"f
"F
[test@test perl]$ echo 'ff"cc"' | ./0005.pl
ff"cc"
Ff"Cc"
[test@test perl]$ echo '""' | ./0005.pl
""
""
[test@test perl]$

P.S. Regexp vozmozno te sovsem to4nije. Posmotri mozet poto4neje smoze6
pridumat.