Dim reg As String = "\x2013" 'Recherche uniquement de tiret Dim test As String = ChrW(8211) 'Devrait correspondre au fameux tiret 'Affiche pas le bon tiret mais peut importe, surement une limite de la console Console.WriteLine(test) 'Affiche bien "ASCW=2013" Console.WriteLine("ASCW=" & AscW(test(0)).ToString("X2")) 'Affiche "UTF8=E280" Dim utf8Table() As Byte = Encoding.UTF8.GetBytes(test(0)) Console.WriteLine("UTF8=" & utf8Table(0).ToString("X2") & utf8Table(1).ToString("X2")) 'Affiche 0 malheureusement Dim Anomalies As MatchCollection= Regex.Matches(test, reg) Console.WriteLine(Anomalies.Count)]
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionDim reg As String = "\u2013" Dim test As String = Encoding.Unicode.GetString(New Byte() {&H13, &H20}) Dim Anomalies As MatchCollection = regex.Matches(test, reg) Console.WriteLine(Anomalies.Count)
Dim TheStringToCheck As String = Encoding.Unicode.GetString(New Byte() {&H13, &H20}) Dim replaceReg As New Regex("\u2013") TheStringToCheck = replaceReg.Replace(TheStringToCheck, cstBadXmlCharSubtitute)
En fait, il m'avait semblé avoir lu que Unicode de .Net était UTF-8 par défaut, raison pour laquelle je ne me suis pas focalisé dessus.