Strängdatatyp (Visual Basic)
Innehåller sekvenser med osignerade 16-bitars (2 byte) kodpunkter som sträcker sig i värde från 0 till 65535. Varje kodpunkt, eller teckenkod, representerar ett enda Unicode-tecken. En sträng kan innehålla mellan 0 och cirka två miljarder (2 ^ 31) Unicode-tecken.
Kommentarer
String
Använd datatypen för att lagra flera tecken utan matrishanteringskostnaderna Char()
för , en matris med Char
element.
Standardvärdet String
för är Nothing
(en null-referens). Observera att detta inte är samma som den tomma strängen (värdet ""
).
Unicode-tecken
De första 128 kodpunkterna (0–127) i Unicode motsvarar bokstäverna och symbolerna på ett vanligt amerikanskt tangentbord. De första 128 kodpunkterna är samma som de som ASCII-teckenuppsättningen definierar. De andra 128 kodpunkterna (128–255) representerar specialtecken, till exempel latinska alfabetbeteckningar, accenter, valutasymboler och bråktal. Unicode använder de återstående kodpunkterna (256–65535) för en mängd olika symboler. Detta inkluderar globala texttecken, diakritiska tecken och matematiska och tekniska symboler.
Du kan använda metoder som IsDigit och IsPunctuation på ett enskilt tecken i en String
variabel för att fastställa dess Unicode-klassificering.
Formatkrav
Du måste omsluta en String
literal inom citattecken (" "
). Om du måste inkludera ett citattecken som ett av tecknen i strängen använder du två sammanhängande citattecken (""
). I följande exempel visas detta.
Dim j As String = "Joe said ""Hello"" to me."
Dim h As String = "Hello"
' The following messages all display the same thing:
' "Joe said "Hello" to me."
MsgBox(j)
MsgBox("Joe said " & """" & h & """" & " to me.")
MsgBox("Joe said """ & h & """ to me.")
Observera att de sammanhängande citattecken som representerar ett citattecken i strängen är oberoende av citattecknen som börjar och avslutar literalen String
.
Strängmanipuleringar
När du har tilldelat en sträng till en String
variabel är strängen oföränderlig, vilket innebär att du inte kan ändra dess längd eller innehåll. När du ändrar en sträng på något sätt skapar Visual Basic en ny sträng och överger den föregående. Variabeln String
pekar sedan på den nya strängen.
Du kan ändra innehållet i en String
variabel med hjälp av en mängd olika strängfunktioner. I följande exempel visas funktionen Left
Dim S As String = "Database"
' The following statement sets S to a new string containing "Data".
S = Microsoft.VisualBasic.Left(S, 4)
En sträng som skapats av en annan komponent kan vara vadderad med inledande eller avslutande blanksteg. Om du får en sådan sträng kan du använda Trimfunktionerna , LTrimoch RTrim för att ta bort dessa blanksteg.
Mer information om strängmanipuleringar finns i Strängar.
Programmeringstips
Negativa tal. Kom ihåg att tecknen som finns i
String
är osignerade och inte kan representera negativa värden. I vilket fall som helst bör du inte användaString
för att lagra numeriska värden.Interop-överväganden. Om du interagerar med komponenter som inte är skrivna för .NET Framework, till exempel Automation- eller COM-objekt, ska du komma ihåg att strängtecken har en annan databredd (8 bitar) i andra miljöer. Om du skickar ett strängargument med 8-bitars tecken till en sådan komponent deklarerar du den som
Byte()
, en matris medByte
element i stället förString
i den nya Visual Basic-koden.Skriv tecken. Om du lägger till tecknet
$
för identifierartyp till en identifierare tvingar det tillString
datatypen.String
har inget tecken av literaltyp. Kompilatorn behandlar dock literaler som omges av citattecken (" "
) somString
.Ramverkstyp. Motsvarande typ i .NET Framework är System.String klassen .