[Regexp(/Perl)] Weg met hoofdletters

Pagina: 1
Acties:
  • 61 views sinds 30-01-2008

  • muba
  • Registratie: April 2002
  • Laatst online: 19-10-2013

muba

Prince of Persia!

Topicstarter
Hallo!

Ik ben een regexp aan het schrijven die een opgegeven naam ombouwt tot een string waarbij hoofdletters goed staan.
Als voorbeeld gebruik ik mijn eigen naam:
"Dhr. Peter-Anders Ramakers", maar natuurlijk niet zo mooi.
"dhr. peTEr-anders rAmAkers". Ik maak het een systeem graag een beetje moeilijk. Hier is mijn script:
code:
1
2
3
4
$name = "peTEr-anders rAmAkers";
$name =~ s/(^| |-|\.)([a-z])/\1\u\2/g;
$name =~ s/([A-Za-z])([A-Z])/\1\l\2/g;
print $name;

Dit werkt goed, behalve die TE van Pe(TE)r... die E blijft namelijk uppercase... Waarom? Ik heb al geprobeerd de mofifiers gc, ggc en go te gebruiken maar het helpt niets...
What's wrong?

Alvast bedankt enzo,
MUBA.

Reporter: Mister Gandhi, what do you think of western civilisation?
Gandhi: I think it would be a good idea


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

staat hier nix? http://gathering.tweakers.net/forum/list_messages/392390/#regexen
en anders in de linkjes die daarin staan?

Doet iets met Cloud (MS/IBM)


Verwijderd

waarom doe je niet de hele naam lcase($name)
en dan met wat regexpjes de eerste letters van elk woord ucase?

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Is er niet een ucfirst methode :?
Dat gecombineerd met lcase moet toch opleveren wat je wil? :)

Verwijderd

ja maar dat werkt niet bij tim jansen
dan wordt de t wel upppercase maar de j niet, of je moet weer gaan splitten op spaties enzow maar dan lijkt een regexpje mij een stuk effiecienter

  • muba
  • Registratie: April 2002
  • Laatst online: 19-10-2013

muba

Prince of Persia!

Topicstarter
Hrrmz, lcasen (lc in perl toch?) lijkt me wel een goed idee en dan idd die eerste regexp erop loslaten... Dat lost weliswaar wel mijn probleem op maar toch snap ik niet waarom die 2e regexp dan niet werkt... iemand?

Reporter: Mister Gandhi, what do you think of western civilisation?
Gandhi: I think it would be a good idea


  • muba
  • Registratie: April 2002
  • Laatst online: 19-10-2013

muba

Prince of Persia!

Topicstarter
Zo... mijn vorige post was gedaan vanaf een computer waar geen Perl op stond, zit nou weer achter een goede computer en idd, lc($name) en dan de regexp, dat werkt goed. Heb nog wat dingen geprobeerd met die regexp die ik eerst gebruikte in plaats van lc() maar ik snap nog steeds niet wat daar fout aan is.

Reporter: Mister Gandhi, what do you think of western civilisation?
Gandhi: I think it would be a good idea


  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

[topic=482860/1/100]
Dan daar maar verder he?
Pagina: 1

Dit topic is gesloten.