Szybkie szukanie
Słowo kluczowe:
niedziela, 05 luty 2012
Start arrow Tips & Tricks arrow Jak policzyć znaki w tekście bez liczenia ich funkcją mid (autor:Bisiek)
Jak policzyć znaki w tekście bez liczenia ich funkcją mid (autor:Bisiek) Drukuj E-mail
Napisał Administrator   
niedziela, 12 luty 2006
Dim Text As String
Dim Znak As String * 1
Dim Tablica As Variant
Dim LiczbaZnaków(1 To 255) As Integer
Dim x As String ' - wynik 'wprowadza tekst do pamieci
Text = "Ciekawe ile wy tym tekscie jest róznych liter??"
'Liczy wszystkie znaki
For i = 1 To 255
'Zamienia numer na znak
Znak = Chr$(i)
'Dzieli tekst wybranym znakiem w tablice
Tablica = Split(Text, Znak)
'Ustala liczbe znaków rozmiarem tablicy
LiczbaZnaków(i) = UBound(Tablica) 'Podaje znak i jego ilosc
If LiczbaZnaków(i) > 0 Then x = x & "'" & Chr$(i) & "' sa " & LiczbaZnaków(i) & vbCrLf
Next
'Wyswietla wyniki
MsgBox x

Bisiek

Komentarze
wydaje mi sie, ze uzycie funkcji len jes
Dodane przez sagyrd w dniu - 2006-02-17 12:41:13
Tekst$ = "Ciekawe ile wy tym tekscie jest róznych liter??" 
x = len (Tekst$) 
MsgBox x
sorki nie doczytalem, ze chodzi o rozne
Dodane przez sagyrd w dniu - 2006-02-17 12:42:21
:grin
Troszke na piechotke...
Dodane przez ViDoQuE w dniu - 2007-06-02 23:15:18
Dim tekst,wynik as String 
Dim ilosc_wystapien(255) as Integer 
tekst ="Ciekawe ile wy tym tekscie jest róznych liter??" 
 
'petla inkrementujaca licznik odpowiedniego znaku 
For i = 1 to len(tekst) step 1 
ilosc_wystapien(chr$(mid(tekst,i,1)))= ilosc_wystapien(chr$(mid(tekst,i,1))) +1 
next i 
 
'petla wypisująca wartości poszczególnych znaków do pami?ci 
for i = 1 to 255 
If ilosc_wystapien(i) > 0 then 
wynik = wynik & chr(10) & i & ": " & ilosc_wystapien(i) 
End If 
 
next i 
 
'wyświetlenie wyniku 
Msgbox wynik 
 
'ViDoQuE
Troszke na piechotke ... tym razem bez M
Dodane przez ViDoQuE w dniu - 2007-06-02 23:42:06
Dim tekst, wynik As String 
Dim i, ilosc_wystapien(255) As Integer 
tekst = "asfd DDDL:Kjhlhjga234lhjg" 
 
Dim l 
 
'funkcja dostepna w Visual Basic 2005 .Net 
l = tekst.ToCharArray() 
 
'zliczanie w tablicy wystapie? 
For i = 0 To Len(tekst) - 1 Step 1 
ilosc_wystapien((Asc(l(i)))) = ilosc_wystapien((Asc(l(i)))) + 1 
Next i 
 
'przepisanie wyników do zmiennej 
For i = 0 To 255 Step 1 
If ilosc_wystapien(i) > 0 Then 
wynik = wynik & Chr(i) & ": " & ilosc_wystapien(i) & Chr(10) 
End If 
Next i 
 
'wyświetlenie wyników 
MsgBox(wynik)

Aby dodać komentarz zaloguj się. Jeśli nie masz konta, załóż je sobie.
Tylko zarejestrowani użytkownicy mogą pisać komentarze.

Powered by AkoComment 2.0!

< Poprzedni   Następny >

Menu główne
Start
Teoria
VB.NET
Api
Tips & Tricks
Warsztat
VBMagazine
Pliki
Forum
Literatura
Ankiety
Linki
Szukaj
Wyślij program
Napisz do nas
Redakcja
Logowanie
Login

Hasło

Zapamiętaj mnie
Nie pamiętasz hasła?
Nie masz konta? Załóż je sobie
Gościmy
Aktualnie jest 47 gości online
Statystyka
Użytkownicy: 11344
Newsy: 237
Odnośniki: 48
Odwiedzających: 4318564
Mambo is Free Software released under the GNU/GPL License.