https://foro.gambas-es.org/viewtopic.php?f=5&t=8014&p=48306#p48306
-----------------------------------
Shell
Lunes, 04 May 2020, 22:45

Re: Cuantas Veces Se Repite Una Cadena En Otra.
-----------------------------------
No veo necesidad de usar expresiones regulares para algo sencillo, pero es una posibilidad. :roll: 
El código se vuelve complicado para algo tan trivial.

[code linenumbers=false syntax=gambas]
Public Sub Main()
    
  Dim $sentence As String  
  
  $sentence = "Esto es un texto, esto es un texto, esto es un texto."  
    
  Print StrCountV1($sentence, "(\\S\\Esto es un texto+)")
    
End

'' Function that count the times a substring appear in other string using gb.pcre component
Public Function StrCountV1(sWhere As String, sRegExpression As String) As Integer
  
  Dim re As RegExp
  Dim matches As New String[]
  
  re = New RegExp(sWhere, sRegExpression)
  Do While re.Offset >= 0 And sWhere <> ""
    matches.Add(re.Text)
    If Len(sWhere) > Len(re.Text) Then
      sWhere = Mid(sWhere, re.Offset + Len(re.Text) + 1)
    Else
      sWhere = ""
    Endif
    If sWhere <> "" Then re.Exec(sWhere)
  Loop
  Return matches.Count  
  
End
[/code]

Saludos


