Sonderzeichen zu Beginn des Wortes löschen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Sonderzeichen zu Beginn des Wortes löschen

    Hi

    Ich habe hier ein Wort welches aber als ersten Buchstaben kein von mir vorher festgelegtes Zeichen haben sollen (z.B. <,>,!,?,-,_, etc.).
    Ich muss also überprüfen ob der erste Buchstabe des Wortes mit einem in meiner Liste aufgeführten identisch ist und falls ja soll es rausgelöscht werden.
    Wenn danach noch ein ungewolltes Zeichen folgt soll das auch entfernt werden usw.

    Gibt es für dieses Problem bereits eine schöne Lösung? Wenn ich da anfange wird das 'n Riesencode.. geht das auch schneller?

  • #2
    1) guckst du substr und in_array an.

    oder

    2) schreibst dir ne Regex. Beides möglich.

    ersteres könnte schneller sein...

    Kommentar


    • #3
      danke!

      aber gibt es eine Möglichkeit mit in_array() gleich auf mehrere zeichen zu überprüfen? Wenn eines von den aufgeführten vorhanden ist soll true zurückgegeben werden.
      Ist das möglich?

      Kommentar


      • #4
        aber gibt es eine Möglichkeit mit in_array() gleich auf mehrere zeichen zu überprüfen? Wenn eines von den aufgeführten vorhanden ist soll true zurückgegeben werden.
        genau deswegen in_array()!

        was ich gerade erst gesehen habe

        Ich muss also überprüfen ob der erste Buchstabe des Wortes mit einem in meiner Liste aufgeführten identisch ist und falls ja soll es rausgelöscht werden.
        Wenn danach noch ein ungewolltes Zeichen folgt soll das auch entfernt werden usw.
        in dem fall müsstest du bei 1) mit ner while-schleife arbeiten.

        Kommentar


        • #5
          Hmm also ich glaub wir reden aneinander vorbei

          Ich habe also ein Wort in $string. Den ersten Buchstaben bekomme ich:
          PHP-Code:
          $array=("<",">",".","-",",","!","?","=","(",")","/","%");
          $firstletter=substr($string,0,1); 
          weiter geht's dann so, dass überprüft wird ob der $firstletter ein sonderzeichen ist das in $array aufgeführt ist. Aber wozu hilft mir da in_array()

          //edit: quatsch red ich! hab's gecheckt denke ich

          Kommentar


          • #6
            ich wollt schon anfangen zu motzen!!!

            Kommentar


            • #7
              Hier hab das mal zamgebastelt, funktioniert sogar recht gut!

              PHP-Code:
              function del_specialchar($string) {
                  
              $badchars=Array("!","?","-","_");
                  
              $firstletter=substr($string,0,1);
                  if(
              in_array($firstletter,$badchars)) {
                      while(
              in_array($firstletter,$badchars)) {
                          
              $firstletter=substr($string,0,1);
                          if(
              in_array($firstletter,$badchars)) $string=substr($string,1);
                      }            
                  }
                  if(
              $string=="") { echo "Nur Sonderzeichen"; exit; }
                  return 
              $string;

              Danke für die freundliche Unterstützung

              Grüße

              Kommentar


              • #8
                geht viel einfacher!!!

                PHP-Code:
                function del_specialchar($string
                {

                    
                $badchars = array('!','?','-','_');

                    while(
                in_array(substr($string,0,1),$badchars))
                        
                $string substr($string,1);

                    if(empty(
                $string))
                    {

                        echo 
                'Nur Sonderzeichen';
                        return 
                FALSE;

                    }

                    return 
                $string;


                Kommentar


                • #9
                  ach das mir jetzt egal...
                  Immerhin kann ich beim anderen behaupten, dass es von mir ist

                  Kommentar

                  Lädt...
                  X