Ho una stringa (ad esempio: "Hello there. My name is John. I work very hard. Hello there!"
) e sto cercando di trovare il numero di occorrenze della stringa "hello there"
. Finora, questo è il codice che ho:come trovare il numero di occorrenze di una sottostringa all'interno di una stringa vb.net
Dim input as String = "Hello there. My name is John. I work very hard. Hello there!"
Dim phrase as String = "hello there"
Dim Occurrences As Integer = 0
If input.toLower.Contains(phrase) = True Then
Occurrences = input.Split(phrase).Length
'REM: Do stuff
End If
Purtroppo, ciò che questa riga di codice sembra fare è dividere la stringa ogni volta che vede la prima lettera del phrase
, in questo caso, h
. Quindi, invece del risultato Occurrences = 2
che spero, otterrò un numero molto più grande. So che contare il numero di spaccature in una stringa è un modo orribile per fare questo, anche se ottengo la risposta corretta, quindi qualcuno potrebbe aiutarmi e fornire assistenza?
la domanda non è ben formata. Se stai usando vb.net mentre è taggato, la funzione Split accetterà una stringa, non solo un carattere. Quindi l'occorrenza nel tuo caso sarà 3 perché hai dimenticato di sottrarre 1. Riferimento: https://msdn.microsoft.com/en-us/library/system.string.split%28v=vs.110%29.aspx – Gaucho