Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 12 odgovora
  • 4.277 pregleda

Najnovija ↓

UPPER <-> lower 09.05.2003. u 19:48 · pre 285 meseci #1
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 ... )
Potpis
"It's okay, I'm just admiring to the shape of your skull!" -- Dr. Gonzo
Re: UPPER <-> lower 09.05.2003. u 20:39 · pre 285 meseci #2
$ echo "VELIKA SLOVA SU MALA SLOVA" | tr 'A-Z' 'a-z'

;)
Potpis
Alex: My favorite site is http://localhost/
R.J. Oppenheimer: "I am become death, destroyer of worlds" (1945 AD)
tweet.13x ||
linkedin.13x
Re: UPPER <-> lower 09.05.2003. u 20:43 · pre 285 meseci #3
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.
Potpis
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
Re: UPPER <-> lower 09.05.2003. u 23:33 · pre 285 meseci #4
t0wk me pretekao pa dao skoro sva rešenja. I šta ja sad da napišem? :)

Smisliću neko.. valjda..
Re: UPPER <-> lower 10.05.2003. u 06:03 · pre 285 meseci #5
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 ;-)
Potpis
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
Re: UPPER <-> lower 10.05.2003. u 16:49 · pre 285 meseci #6
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.
Potpis
"It's okay, I'm just admiring to the shape of your skull!" -- Dr. Gonzo
Re: UPPER <-> lower 10.05.2003. u 16:57 · pre 285 meseci #7
Prvo slovo u reči, ili u rečenici ili u redu (line) ?
Re: UPPER <-> lower 10.05.2003. u 17:04 · pre 285 meseci #8
# 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? ;-)
Potpis
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
Re: UPPER <-> lower 10.05.2003. u 17:06 · pre 285 meseci #9
pa recimo u reci, kad se stvori nacin da se to uradi, moze vrlo lako i u recenici ili u redu (line) ...
Potpis
"It's okay, I'm just admiring to the shape of your skull!" -- Dr. Gonzo
Re: UPPER <-> lower 10.05.2003. u 17:54 · pre 285 meseci #10
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
Potpis
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
Re: UPPER <-> lower 10.05.2003. u 22:20 · pre 285 meseci #11
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>
Re: UPPER <-> lower 10.05.2003. u 22:24 · pre 285 meseci #12
U perlu, veliko slovo u svakoj reči u liniji:

Code:

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

Re: UPPER <-> lower 11.05.2003. u 03:50 · pre 285 meseci #13
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 ;)
Potpis
blogče :: unescaped beta
  »
go-paste extenzija
  »
reč dana: backup
  »
bočne koalicije
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme