Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

UPPER <-> lower

[es] :: Skript jezici :: UPPER <-> lower

[ Pregleda: 3222 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

B o j a n
eCTRL
EU

Član broj: 1178
Poruke: 2925
*.yubc.net

Jabber: bc@default.co.yu
Sajt: default.co.yu/~bc


+1 Profil

icon UPPER <-> lower09.05.2003. u 18:48 - pre 254 meseci
dakle, kako na najelegantniji nacin konvertovati sva uppercase slova u lowercase ?
operise se sa imenima file-ova, sto verovatno znaci neki od standardnih alata ( sed, awk ... )
"It's okay, I'm just admiring to the shape of your skull!" -- Dr. Gonzo
 
Odgovor na temu

alex
Aleksandar Radulovic
Senior Software Engineer, Spotify
Stockholm, Sweden

Član broj: 71
Poruke: 2194
*.habil.is

Jabber: alex@a13x.info
ICQ: -1
Sajt: www.a13x.info


+1 Profil

icon Re: UPPER <-> lower09.05.2003. u 19:39 - pre 254 meseci
$ echo "VELIKA SLOVA SU MALA SLOVA" | tr 'A-Z' 'a-z'


Alex: My favorite site is http://localhost/
R.J. Oppenheimer: "I am become death, destroyer of worlds" (1945 AD)
tweet.13x ||
linkedin.13x
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: UPPER <-> lower09.05.2003. u 19:43 - pre 254 meseci
echo PROBA | tr A-Z a-z
echo PROBA | awk '{ print tolower($0) }'
echo PROBA | sed 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'
TXT='PROBA' && perl -e "print lc($TXT)"

Najelegantniji je najverovatnije „tr“, pošto tome i služi.
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: UPPER <-> lower09.05.2003. u 22:33 - pre 254 meseci
t0wk me pretekao pa dao skoro sva rešenja. I šta ja sad da napišem? :)

Smisliću neko.. valjda..
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: UPPER <-> lower10.05.2003. u 05:03 - pre 254 meseci
Znaš kako bi trebalo da može: da napraviš sed skriptu koja će da traži bilo koji od A-Z, da nađenu vrednost obradi nekim programom za računanje kao \1+'a'-'A', i time da zameni. No, ne poznajem toliko sed, a ne bih sad da čitam uputstvo ;-)

Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

B o j a n
eCTRL
EU

Član broj: 1178
Poruke: 2925
194.247.209.*

Jabber: bc@default.co.yu
Sajt: default.co.yu/~bc


+1 Profil

icon Re: UPPER <-> lower10.05.2003. u 15:49 - pre 254 meseci
fino fino l;)
da malo probudimo ovaj deo foruma, evo i nastavka ...

kako selektivno izabrati da se neka slova konvertuju, a neka ne ... na primer; prvo slovo da bude uvek upper, a ostala lower.

"It's okay, I'm just admiring to the shape of your skull!" -- Dr. Gonzo
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: UPPER <-> lower10.05.2003. u 15:57 - pre 254 meseci
Prvo slovo u reči, ili u rečenici ili u redu (line) ?
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: UPPER <-> lower10.05.2003. u 16:04 - pre 254 meseci
# Ovo mi prvo pada na pamet, mada nije baš najelegantnije
PRVO=`echo prOBA | sed 's/^\(.\).*/\1/'| tr a-z A-Z`
OSTATAK=`echo prOBA | sed 's/^.\(.*\)/\1/'| tr A-Z a-z`
# i onda još
rezultat="$PRVO$OSTATAK"

U awk-u, Perl-u i sličnima može i lepše, ali kome to još treba? ;-)

Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

B o j a n
eCTRL
EU

Član broj: 1178
Poruke: 2925
194.247.209.*

Jabber: bc@default.co.yu
Sajt: default.co.yu/~bc


+1 Profil

icon Re: UPPER <-> lower10.05.2003. u 16:06 - pre 254 meseci
pa recimo u reci, kad se stvori nacin da se to uradi, moze vrlo lako i u recenici ili u redu (line) ...

"It's okay, I'm just admiring to the shape of your skull!" -- Dr. Gonzo
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: UPPER <-> lower10.05.2003. u 16:54 - pre 254 meseci
Probaj \<, \b i slične za početak reči i drugih elemenata, ili već napravi svoj regex za to (npr. tražiš ili početak reda, ili razmak, tačku, zarez, pa slovo itd.), a za malo bolji uvod u regex, pogledaj http://etext.lib.virginia.edu/helpsheets/regex.html.

Kompletna skripta:
Code:
#!/bin/sh

# prvo sve u mala
TXT=`echo $* | tr A-Z a-z` 
for i in a b c d e f g h i j k l m n o p q r s t u v w x y z; do \
  TXT=$(echo $TXT | sed s/\\b$i/`echo -n $i | tr a-z A-Z`/g)
done
echo $TXT


No, valjda ovi drugi (awk, perl) mogu to i mnogo lepše

Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: UPPER <-> lower10.05.2003. u 21:20 - pre 254 meseci
JavaScript rešenje, za svaku unetu reč:

Code:

<html
<head>
<script language="JavaScript1.2"><!--
function u() {
var p = /(\w)(\w*)/;
var a = document.form1.text1.value.split(/\s+/g);
for (i = 0 ; i < a.length ; i ++ ) {
var z = a[i].match(p);
var f = z[1].toUpperCase();
var r = z[2].toLowerCase();
a[i] = f+r
}
document.form1.text1.value = a.join(' ');
}
//-->
</script>
</head>
<body>
<form name="form1">
<input type="text" name="text1">
<input type="button" onClick="u()" value="Uppercase">
</form>
</body>
</html>
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: UPPER <-> lower10.05.2003. u 21:24 - pre 254 meseci
U perlu, veliko slovo u svakoj reči u liniji:

Code:

$text = lc($text);;
$text =~ s/\b(\w)/\U$1/g;

 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.dial.InfoSky.Net

Sajt: localhost


+5 Profil

icon Re: UPPER <-> lower11.05.2003. u 02:50 - pre 254 meseci
php -r "echo ucwords(file_get_contents('php://stdin'))"
php -r "echo ucwords(join('', file('php://stdin')))"
php -r "echo ucwords(fread(STDIN, 999000))"

(naravno, bilo koji od ovih, a ne svi ;)
 
Odgovor na temu

[es] :: Skript jezici :: UPPER <-> lower

[ Pregleda: 3222 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.