vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#

https://www.vbarchiv.net
Rubrik: Variablen/Strings · String-Operationen   |   VB-Versionen: VB604.11.03
Zeichenfolge in einem String zählen

Ermittelt wie oft ein beliebiger String in einen anderen beliebigen String vorkommt. Sowohl Case sensitiv oder ohne Case sensitiv.

Autor:   Philipp HeinzeBewertung:  Views:  14.214 
www.phsoftware.deSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Nachfolgender Code ermittelt, wie oft in einem Text ein beliebiger anderer String vorkommt. Hierbei kann sowohl die Berücksichtigung der exakten Groß-/Kleinschreibung sowohl aktiviert, als auch deaktiviert werden.

Private Function CountSigns(ByVal sText As String, _
  ByVal sFindThis As String, _
  Optional ByVal bCaseSensitiv As Boolean = False) As Long
 
  ' Ist ein Such-String angegeben?
  If Len(sFindThis) = 0 Then CountSigns = -1: Exit Function
 
  Dim nSigns As Long
  Dim nSearchLen As Long
 
  ' Ermitteln der Textlänge, sowie der Suchtextlänge
  nSigns = Len(sText)
  nSearchLen = Len(sFindThis)
 
  If bCaseSensitiv then
    ' exakte Groß-/Kleinschreibung berücksichtigen
 
    ' Such-Zeichenfolge aus dem Originalstring löschen
    sText = Replace(sText, sFindThis, "")
 
  Else
    ' Groß-/Kleinschreibung unbeachtet lassen
 
    ' Such-Zeichenfolge aus dem Originalstring löschen
    sText = Replace(LCase$(sText), LCase$(sFindThis), "")
  End If
 
  ' Länge des Originalstrings abzgl. Länge des modifizierten 
  ' Strings dividiert durch die Länge des Suchstrings, 
  ' ergibt die Anzahl der Fundstellen
  CountSigns = (nSigns - Len(sText)) / nSearchLen
End Function

Beispiel für den Aufruf:

Dim sText as String
sText = "Test Aufruf"
 
MsgBox sText, "T"        ' Rückgabewert ist 2
MsgBox sText, "T", True  ' Rückgabewert ist 1
MsgBox sText, "h"        ' Rückgabewert ist 0
MsgBox sText, ""         ' Rückgabewert ist -1



Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(einschl. Beispielprojekt!)

Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
- nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten
- Symbol-Galerie mit mehr als 3.200 Icons im modernen Look
Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m.
 
 
Copyright ©2000-2024 vb@rchiv Dieter OtterAlle Rechte vorbehalten.


Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.