Differenze tra le versioni di "Rimuovere da una stringa uno o più caratteri del codice ASCII esteso"

Da Gambas-it.org - Wikipedia.
 
Riga 2: Riga 2:
  
 
Per rimuovere da una stringa uno o più caratteri appartenenti all'<I>ASCII esteso</i>, è possibile utilizzare il seguente codice:
 
Per rimuovere da una stringa uno o più caratteri appartenenti all'<I>ASCII esteso</i>, è possibile utilizzare il seguente codice:
  '''Public''' Sub Main()
+
  Public Sub Main()
 
   
 
   
 
   Dim s As String = "ab" & Chr(180) & "cd ef" & Chr(185) & "g" & Chr(195) & "hil" & Chr(179) & " mnop"
 
   Dim s As String = "ab" & Chr(180) & "cd ef" & Chr(185) & "g" & Chr(195) & "hil" & Chr(179) & " mnop"
Riga 29: Riga 29:
 
   Print s
 
   Print s
 
    
 
    
  '''End'''
+
  End

Versione attuale delle 16:35, 29 giu 2024

I caratteri appartenenti al codice ASCII esteso, sono quei caratteri con codice superiore al valore 127.

Per rimuovere da una stringa uno o più caratteri appartenenti all'ASCII esteso, è possibile utilizzare il seguente codice:

Public Sub Main()

  Dim s As String = "ab" & Chr(180) & "cd ef" & Chr(185) & "g" & Chr(195) & "hil" & Chr(179) & " mnop"
  Dim bb As Byte[]
  Dim b As Byte
  Dim i As Integer

' Mostra la stringa come appare con i caratteri del "ASCII esteso":
  Print s
   
  With bb = Byte[].FromString(s)
    i = .Count
  End With
  
  While b < i
    If Not IsAscii(Chr(bb[b])) Then
      bb.Remove(b)
      Dec i
    Endif
    Inc b
  Wend
   
  s = bb.ToString(0, bb.count)
   
' Mostra la stringa ora priva dei caratteri del "ASCII esteso":
  Print s
  
End