Announcement

Collapse
No announcement yet.

CString Variable auf Buchstaben prüfen?

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • CString Variable auf Buchstaben prüfen?

    Hallo,

    Ich möchte überprüfen ob eine CString Variable nur Ziffern oder auch Buchstaben enthält und je nachdem dann reagieren (z.B. durch ne if-Schleife)
    Geht das? Wäre für n bissle Code sehr dankbar

    Mark

  • #2
    Man kann die Funktionen isalpha, isdigit, etc. benutzen.

    Zum Bleistift (quick & dirty):
    <PRE><CODE>
    char Teststring[256];
    CString Ausgabe;
    int i;
    int iLaenge;
    int digitcount = 0;
    int alphacount = 0;
    int elsecount = 0;
    <PRE><CODE>
    if (!m_edtString.IsEmpty())
    {
    sprintf(Teststring, "%s", (LPCTSTR)m_edtString);
    iLaenge = m_edtString.GetLength();
    for (i = 0; i < iLaenge; i++)
    {
    if (isdigit(Teststring[i]))
    digitcount ++;
    else if (isalpha(Teststring[i]))
    alphacount ++;
    else elsecount ++;
    }
    Ausgabe.Format("%d %d %d", digitcount, alphacount, elsecount);
    AfxMessageBox(Ausgabe);
    }
    </PRE></CODE>

    Das musst Du Dir dann selbstverständlich für Deine Zwecke ("nur Zahlen" etc.) entsprechend umbasteln

    Comment


    • #3
      ...noch 'ne Ergänzung:
      Wenn man auch Umlaute berücksichtigen will, muss man die Funktion IsCharAlpha verwenden. Dazu TCHAR statt char verwenden

      Comment

      Working...
      X