Avatar billede tommer Nybegynder
28. november 2004 - 14:03 Der er 18 kommentarer og
1 løsning

validator på del af e-mail

Jeg skal lave en validator som chekker at det sidste i en email er: xxx.dk
Hvordan kan jeg gøre det?
Avatar billede basementjack Nybegynder
28. november 2004 - 14:11 #1
jeg går udfra at du har validateret at det er en korrekt email og at den ligger i myStr.

Public checkEmail(myStr As String)
Dim goodEmail As Boolean = true
Dim arMail As Array
arMail = myStr.Split("@")
arMail = arMail(1).Split(".")
Dim i As Integer
i = arMail.Length -2
If not arMail(i).ToLower = "xxx" Then
  goodEmail = false
End If
i = i +1
If not arMail(i).ToLower = "dk" Then
  goodEmail = false
End If
Return goodEmail
End Function
Avatar billede basementjack Nybegynder
28. november 2004 - 15:25 #2
Får du det at virke?..
Avatar billede tommer Nybegynder
28. november 2004 - 20:40 #3
ikke endnu...jeg prøver at omskrive til c#, det går ikke så godt.....
Avatar billede tommer Nybegynder
28. november 2004 - 20:40 #4
;-)
Avatar billede basementjack Nybegynder
28. november 2004 - 20:45 #5
Er det ikke bare(ikke c# kyndig, :P):

goodEmail Bool = true;
arMail Array;
arMail = myStr.Split("@");
arMail = arMail(1).Split(".");
i Int;
i = arMail.Length - 2;
If (!arMail(i).ToLower = "xxx") {
  goodEmail = false;
}
i = i + 1
If (!arMail(i).ToLower = "dk") {
  goodEmail = false;
}
Return goodEmail
Avatar billede basementjack Nybegynder
28. november 2004 - 20:53 #6
http://www.developerfusion.com/utilities/convertvbtocsharp.aspx

Prøvede en oversætter, den synz det skal se sådan her ud.. :

public object checkEmail(string myStr)
{
bool goodEmail = true;
Array arMail;
arMail = myStr.Split("@");
arMail = arMail(1).Split(".");
int i;
i = arMail.Length - 2;
if (!arMail(i).ToLower == "xxx") {
  goodEmail = false;
}
i = i + 1;
if (!arMail(i).ToLower == "dk") {
  goodEmail = false;
}
return goodEmail;
}
Avatar billede nheilbuth Nybegynder
29. november 2004 - 17:34 #7
Ville det ikke være væsentlig nemmere med en RegularExpressionValidator?

Nu kan jeg selvfølgelig ikke huske mine reg. expressions, men der må da være en derude der lige har den rigtige på lager? :)
Avatar billede basementjack Nybegynder
29. november 2004 - 21:33 #8
Jo.. Det er lettere hvis man kan finde ud af at skrive sådan en expression.. :)
Men checkEmail skulle virke lige så godt..
Avatar billede tommer Nybegynder
29. november 2004 - 21:37 #9
basementjack... du skal ikke være så stolt jeg har testet med 1000 brugere idag den fejler heletiden og jeg har pillet den af igen.....
Avatar billede tommer Nybegynder
29. november 2004 - 21:39 #10
nej fuck SORRY det var ikke din men en anden
så du får points *g*
Avatar billede basementjack Nybegynder
29. november 2004 - 21:40 #11
Hehe.. Det er fint.. Var lige ved at tro jeg har skrevet noget forkert i det C#.. :)
Avatar billede tommer Nybegynder
29. november 2004 - 21:40 #12
det var denne der fejlede, det kan være i kan hjælpe??:

/*    //gør første bogstav i fornavn stort
            string s1 = txtFirstName.Text;
            string[] parts = s1.Split(" ".ToCharArray());
            string s2 = "";
            for(int i = 0; i < parts.Length; i++)
            {
                if(i > 0)
                {
                    s2 += " ";
                }
                s2 += parts[i].Substring(0, 1).ToUpper();
                s2 += parts[i].Substring(1).ToLower();
            }

            //gør første bogstav i efternavn stort
            string s3 = txtLastName.Text;
            string[] parts1 = s3.Split(" ".ToCharArray());
            string s4 = "";
            for(int i = 0; i < parts1.Length; i++)
            {
                if(i > 0)
                {
                    s4 += " ";
                }
                s4 += parts1[i].Substring(0, 1).ToUpper();
                s4 += parts1[i].Substring(1).ToLower();
            }
Avatar billede tommer Nybegynder
29. november 2004 - 21:41 #13
den skal sætte stort bogstav i álle navne der bliver indtastet i et txtfield....
Avatar billede basementjack Nybegynder
29. november 2004 - 21:42 #14
Nu kan det godt være C# syntaks.. Men skal det ikke være:
string[] parts = s1.Split(" ").ToCharArray();
istedet for :
string[] parts = s1.Split(" ".ToCharArray());
Avatar billede tommer Nybegynder
29. november 2004 - 21:44 #15
det tror jeg da også prøver lige...
Avatar billede tommer Nybegynder
29. november 2004 - 21:46 #16
nej det var rigtigt nok....
Avatar billede tommer Nybegynder
29. november 2004 - 21:53 #17
det er denne fejl:
System.ArgumentOutOfRangeException: Index and length must refer to a location within the string.
Avatar billede basementjack Nybegynder
29. november 2004 - 21:53 #18
Prøv med denne..

public object namesAreBig(string str)
{
Array arStr;
int i;
string newStr;
arStr = str.Split(" ");
for (int i = 0; i <= arStr.Length - 1; i++) {
  if (newStr != "") {
    newStr += " ";
  }
  newStr += arStr(i).SubString(0, 1).ToUpper();
  newStr += arStr(i).SubString(1).ToLower();
}
return newStr;
}
Avatar billede tommer Nybegynder
29. november 2004 - 22:22 #19
omskrevet lidt virker det umidlbart, tak for det ;-)

her er points:
http://www.eksperten.dk/spm/566366

public string namesAreBig(string str)
        {
            string[] arStr;
            string newStr = null;
            arStr =  str.Split(" ".ToCharArray());//Split(" ").ToString();
            for (int i = 0; i <= arStr.Length - 1; i++)
            {
                if (newStr != "")
                {
                    newStr += " ";
                }
                newStr += arStr[i].Substring(0, 1).ToUpper();
                newStr += arStr[i].Substring(1).ToLower();
            }
            return newStr;
        }
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester