Je cherche des instructions. J'ai une liste déroulante qui est remplie par une concaténation de deux tables à partir d'une base de données SQL. Exemple de texte: "The Wild - 16/11/2014 02:00". J'essaie d'avoir staA tenir "The Wild" et staB "11/16/2014 02:00". La durée. J'ai essayé d'utiliser une chaîne traditionnelle divisée sur "-", mais cela ne retourne que le premier mot. Ensuite, j'ai essayé une déclaration regex:
Dim input As String = strA
Dim pattern As String = "-"
Dim substring() As String = Regex.Split(input, pattern)
For Each match As String In substring
Console.WriteLine(""{0}"", match)
Next
mais je ne sais pas comment vérifier que la scission a bien eu lieu ni comment accéder aux informations à partir de la scission.
Réponses:
0 pour la réponse № 1Je préfère utiliser des groupes pour faire de telles choses avec regex.
De cette façon, vous pouvez détecter l'absence du modèle attendu pour traiter d'autres entrées.
pattern = "^(?<a>[^-]+) - (?<b>[^-]+)$"
dim m as match=regex.match(input,pattern)
dim a as string=""
dim b as string=""
if m.success then
a=m.groups("a").value
b=m.groups("b").value
end if