2011-01-01 18 views
1

Ich arbeite in Flash Builder 4. Erstellen Sie E-Mail-Validator auf Flex. Lassen Sie sich diesen Code string.search (".") Immer zurückkehren 0

public var s:String=""; 

    public function checkSumbols(_s:String=""):Boolean { 

     s=_s; //e-mail address (input [email protected]) 

     var hDog:int=0; 
     var hPoint:int=0; 
     //check @ 
     hDog=s.search("@"); 
     trace(hDog) // It's work 
     if(hDog==-1) { 
      return false; 
     } else { 
      hPoint=s.substr(hDog).search("."); 
      trace(hPoint); // PANIC this return always 0 
      if(hPoint==-1){ 
       return false; 
     }} 
    } 

Antwort

4

Sie könnten Regex verwenden. Da dot (.) In regex eine besondere Bedeutung hat, müssen Sie vorher 'escape' eingeben: yourString.search(/\./); Sollte funktionieren. HTH FTQuest

+0

Es ist Arbeit !!! Big Thanks))) –

+0

Genau das gleiche Problem, Erstellen von E-Mail-Validierung-Funktion und es blieb auf der Rückkehr der Periode 0. Das funktioniert perfekt !! – BestAnswer

2

search() akzeptiert ein Muster und . bedeutet nur „Einzelnen Charakter“ so es vermutlich erstes einzelnes Zeichens Rückkehr der wahrscheinlichste bei Index 0.

wäre

Sie könnten versuchen search("\.")

+0

mvid Kontroll Suche im gleichen Modus in AS3 funktionieren würde ("\"). -return 0 (((( –

+2

) Ich habe noch nie in Flash geschrieben, aber ich würde versuchen 'suchen (" \\. ")'. – marcog

+0

Danke, diese Arbeit !!! –

0

ich mit Such versuchen (/[.]/) und es auch in Javascript gearbeitet, ich denke, dass es