Zeichen zählen!
lima-city → Forum → Programmiersprachen → Basic
angabe
anzahl
archiv
befehl
befehlen
beitrag
chinesisch
eins
fragen
not
po
quellen
satzzeichen
scharen
startseite
tricksen
variable
voneinander
zuletzt
zhler
-
HI,
ich wollte fragen wie man in VB zeichen z?hlen kann!
also in php ist es strlen("Testwort"); und die ausgabe w?re 8!
aber jetzt wollte ich wissen wie es in vb aussieht weil ich vb lernen will, weil wir das auch bald in der schule durch nehmen!
und noch ein befehl br?uchte ich wie man einzelne zeichen aus einem String herauslesen kann, nur mit der angabe der position!
THX schon mal!
PS: ich kann kein vb also bitte kein fach-chinesisch! danke -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Public Function CountWords(ByVal sText As String) As Long
Dim Satzzeichen As String
Dim nCount As Long
Dim I As Integer
Dim bFlag As Boolean
Dim sChar As String
Satzzeichen = ",.;:!? " + Chr$(13) + Chr$(10)
If Len(sText) > 0 Then
nCount = 1: bFlag = False
For I = 1 To Len(sText)
sChar = Mid$(sText, I, 1)
If InStr(Satzzeichen, sChar) > 0 Then
If Not bFlag Then
bFlag = True
nCount = nCount + 1
End If
Else
bFlag = False
End If
Next I
If bFlag Then nCount = nCount - 1
End If
CountWords = nCount
End Function
Gru?,
simple
[EDIT]:
Ein paar Erlaeuterungen
Zunaechst werden in der Variable Satzzeichen alle Zeichen festgelegt, durch welche zwei Woerter voneinander getrennt werden. Sollte hier deiner Meinung nach das ein oder andere Zeichen noch fehlen, so fuege dieses einfach noch hinzu. Nun wird der Text Zeichen f?r Zeichen durchlaufen, wobei jedesmal geprueft wird, ob es sich bei dem aktuellen Zeichen um ein Zeichen aus Satzzeichen handelt. Ist dies der Fall, wird der Zaehler um eins erhoeht.
Damit der Wortzaehler nicht bei mehreren aufeinaderfolgenden Satzzeichen mehrfach (und nat?rlich faelschlicherweise) hochgezaehlt wird, wird bFlag = True gesetzt. Dies signalisiert, dass es sich beim zuletzt geprueften Zeichen um ein Satzzeichen handelte. Der Wortzaehler wird demnach immer nur dann um eins erhoeht, wenn ein Satzzeichen gefunden wurde und bFlag = False ist.
Quelle: http://www.vbarchiv.net/archiv/tipp_335.html
Beitrag ge?ndert am 15.10 14:36 von simple -
mal ne frage kannst du lesen???
ich will keine w?rter z?hlen sondern zeichen!!!!
zb. es wird eine zahle eingegeben: 9059747278
jetzt soll er die zeichen dieser zahl z?hlen, die w?ren hier 10 zeichen!!!
und das zweite was ich brauche ist ein befehl mit dem ich einzelne zeichen aus dem sting nehemn kann und zwar nur mit der angabe der position des zeichens also ich will zb. die 4 aus dem sting und die ist auf der position nr. 6 im string! also heist des ich br?uchte sonen befehl ???($sting, 6, 1) den befehl gibt es in php und der heist: substr(); aber ich brauche den net f?r php sondern einen f?r vb! jetzt verst?ndlich??? -
So mal ganz einfach:
mit
intLaenge = LEN(strMeinString)
bekommst du die Anzahl an Zeichen als Integerwert
mit
strZeichen=MID(strMeinString, Pos-1, 1)
bekommst du ein Zeichen an einer bestimmten Position als String. Es kann sein, dass du die verschiedenen Paramter in der Rheienfolge ?ndern musst.
Der erste ist jedenfalls der String, der zweite die Position als integer und der dritte die Anzahl an Zeichen, die du auslesen willst, also in deinem Fall eines.
Hoffe, es klappt, mein VB ist schon eine Weile her
Beitrag ge?ndert am 17.10 20:36 von wacky
Beitrag ge?ndert am 17.10 20:36 von wacky -
Unter:
http://www.activevb.de/startseite/index.html
findest du fasl alle Befehle, Tipps, Tricks, etc.
W?rd mal drunter schauen wenn du mal wieder etwas wissen willst!!! -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage