Wie bekomme ich den ersten Buchstaben eines Wortes GROSS ? - baseportal Forum - Web-Anwendungen einfach, schnell, leistungsfähig!
baseportal
English - Deutsch "Es gibt keine dummen Fragen - jeder hat einmal angefangen"

 baseportal-ForumDie aktuellsten 10, 30, 50, 100 Einträge anzeigen.  

 
 Ausgewählter Eintrag: Zur Liste 
    Beitrag von Nedder (6 Beiträge) am Dienstag, 20.Februar.2001, 13:19.
    Wie bekomme ich den ersten Buchstaben eines Wortes GROSS ?

      Ich habe folgendes Problem

      Meine Besucher geben in einem Suchfeld (eines
      Suchformulares) einen Begriff ein
      (manchmal aber in Kleinbuchstaben)

      z.B. willi meyer

      Da ich für eine korrekte Weiterbearbeitung
      jedoch den ERSTEN BUCHSTABEN eines Wortes
      in GROSSBUCHSTABEN benötige --- hier meine
      Frage :

      Weiß jemand, wie ich in einer Zeichenkette
      den jeweils ersten Buchstaben eines Wortes
      in einen Großbuchstaben umwandle ?

      So daß aus der Besuchereingabe
      $name=willi meyer
      $name=Willi Meyer   wird.
      


      Vielen Dank für die Hilfe
      Nedder


    Antworten

 Alle Einträge zum Thema: Zur Liste 
    Beitrag von Nedder (6 Beiträge) am Dienstag, 20.Februar.2001, 13:19.
    Wie bekomme ich den ersten Buchstaben eines Wortes GROSS ?

      Ich habe folgendes Problem

      Meine Besucher geben in einem Suchfeld (eines
      Suchformulares) einen Begriff ein
      (manchmal aber in Kleinbuchstaben)

      z.B. willi meyer

      Da ich für eine korrekte Weiterbearbeitung
      jedoch den ERSTEN BUCHSTABEN eines Wortes
      in GROSSBUCHSTABEN benötige --- hier meine
      Frage :

      Weiß jemand, wie ich in einer Zeichenkette
      den jeweils ersten Buchstaben eines Wortes
      in einen Großbuchstaben umwandle ?

      So daß aus der Besuchereingabe
      $name=willi meyer
      $name=Willi Meyer   wird.
      


      Vielen Dank für die Hilfe
      Nedder

     Antworten

    Beitrag von Stephan Hix (106 Beiträge) am Dienstag, 20.Februar.2001, 14:16.
    Nicht schön, aber es klappt

      Das kleine Programm unten funktioniert, aber ich bin sicher, dass es mit s/// oder tr/// eleganter und in einem Befehl geht.

      Geht doch mal im www auf die Suche nach "Reguläre Ausdrücke", "regular expressions" oder "regex"! Wenn Du da die richtige Lösung gefunden hast, interessiert mich die auch mal.

      <perl>
      $name="willi klaus meyer";
      @liste=split(" ",$name);
      foreach (@liste){
       $_=uc(substr($_,0,1)).substr($_,1,length($_));
       $neuname.=$_." ";
      }
      out "$neuname<br>";
      

      Gruß
      Stephan
      </perl>
      

     Antworten

    Beitrag von Christoph Bergmann (8110 Beiträge) am Dienstag, 20.Februar.2001, 15:11.
    Re: Nicht schön, aber es klappt

      Einfacher dürfte

      ucfirst

      sein ;-) Also komplett:

      <perl>
      $name="willi klaus meyer";
      

      foreach (split(" ",$name))
      {
        $neuname.=ucfirst." ";    # ohne paramater nimmt ucfirst automatisch $_
      }
      chop $neuname;     # letztes leerzeichen weg
      out "$neuname<br>";
      </perl>
      

      Mit ner regular expression vielleicht so:

      <perl>
      $name="willi klaus meyer";
      $name=~ s/ (.)/" ".uc($1)/egi;
      out $name;
      </perl>
      

      Theoretisch müsste auch was mit \u gehen, weiss aber nicht wie... Irgendwie so:

      <perl>
      $name="willi klaus meyer";
      $name=~ s/ / \u/g;      # geht das????
      out $name;
      </perl>
      

     Antworten

    Beitrag von Stephan Hix (106 Beiträge) am Dienstag, 20.Februar.2001, 15:29.
    Zum Glück lernt man nie aus ;-)) n.t.

      n.t.

     Antworten


     
 Liste der Einträge von 64800 bis 64950:Einklappen Zur Eingabe 
Neueste Einträge << 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | Neuere Einträge < Zur Eingabe  > Ältere Einträge | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 >> Älteste Einträge


Zurück zur Homepage

© baseportal.de. Alle Rechte vorbehalten. Nutzungsbedingungen



powered in 0.11s by baseportal.de
Erstellen Sie Ihre eigene Web-Datenbank - kostenlos!