Strängdatatypen
Datatypen string
representerar en sekvens med noll eller fler Unicode-tecken .
Information om strängfrågeoperatorer finns i Strängoperatorer.
Anteckning
- Internt kodas strängar i UTF-8. Ogiltiga (icke-UTF8)-tecken ersätts med U+FFFD Unicode-ersättningstecken vid inmatningstillfället.
- Kusto har ingen datatyp som motsvarar ett enda tecken. Ett enskilt tecken representeras som en sträng med längd 1.
- Om ett ensträngsvärde i en post överskrider 1 MB (mätt med UTF-8-kodning
string
) när datatypen matas in trunkeras värdet och inmatningen lyckas. Om ett enda strängvärde i en post, eller hela posten, överskrider den tillåtna datagränsen på 64 MB misslyckas inmatningen.
string
Litteraler
Du kan använda dubbla citattecken eller enkla citattecken för att koda strängliteraler i frågetext. Med dubbla citattecken måste du undvika kapslade dubbla citattecken med ett omvänt snedstreck (\
). Med enkla citattecken måste du undvika kapslade enkla citattecken och du behöver inte undvika dubbla citattecken.
Använd omvänt snedstreck för att undvika de omslutande citattecken, tabbtecken (\t
), nya radtecken (\n
) och själva omvänt snedstreck (\\
).
Anteckning
Det nya radtecknet (\n
) och returtecknet (\r
) måste omges av citattecken om du inte använder strängliteraler med flera rader.
Ordagranna strängliteraler
Ordagranna strängliteraler stöds också. I det här formuläret står omvänt snedstreck (\
) för sig självt och är inte ett escape-tecken. Att lägga till tecknet i @
strängliteraler fungerar som en ordagrann identifierare. I ordagranna strängliteraler är dubbla citattecken undantagna med dubbla citattecken och enkla citattecken är undantagna med enkla citattecken.
Ett exempel finns i Ordagrann sträng.
Anteckning
Det nya radtecknet (\n
) och returtecknet (\r
) måste omges av citattecken om du inte använder strängliteraler med flera rader.
Strängliteraler med flera rader
Ange en strängliteral med flera rader med ett "triple-backtick-ackord" (''') i början och slutet av literalen.
Ett exempel finns i Strängliteral med flera rader.
Anteckning
- Strängliteraler med flera rader stöder nya (
\n
) och returnerar (\r
) tecken. - Strängliteraler med flera rader stöder inte undantagna tecken. Liknar ordagranna strängliteraler.
- Strängliteraler med flera rader stöder inte fördunkling.
Sammanfogning av avgränsade strängliteraler
När två eller flera intilliggande strängliteraler inte har någon separation mellan sig i en Kusto-fråga kombineras de automatiskt för att bilda en ny strängliteral. Om strängliteralerna bara avgränsas med blanksteg eller kommentarer kombineras de också för att bilda en ny strängliteral.
Ett exempel finns i Sammanfogade strängliteraler.
Dolda strängliteraler
Frågor lagras för telemetri och analys. Om du vill skydda känslig information som lösenord och hemligheter kan du markera en sträng som en dold strängliteral. Dessa markerade strängar ersätts med asterisker (*
) i frågetexten.
En obfuscated strängliteral skapas genom att lägga till ett h
eller ett H
tecken framför en standard- eller ordagrann strängliteral.
Ett exempel finns i Obfuscated string literal ( Obfuscated string literal).
Viktigt
Markera alla strängliteraler som innehåller hemlig information som dolda strängliteraler.
Tips
I vissa situationer innehåller endast en del av strängliteralen hemlig information. I sådana fall delar du in literalen i en icke-hemlig del och en hemlig del. Märk sedan bara den hemliga delen som fördunklade.
Exempel
Strängliteral med citattecken
I följande exempel visas hur du använder citattecken inom strängliteraler som omfattas av enkla citattecken och dubbla citattecken. Mer information finns i Strängliteraler.
print
s1 = 'string with "double quotes"',
s2 = "string with 'single quotes'"
Resultat
s1 | s2 |
---|---|
sträng med "dubbla citattecken" | sträng med "enkla citattecken" |
Strängliteral med omvänt snedstreck som flyr
I följande exempel skapas ett reguljärt uttrycksmönster med omvänt snedstreck för att undkomma specialtecken. Mer information finns i Strängliteraler.
print pattern = '\\n.*(>|\'|=|\")[a-zA-Z0-9/+]{86}=='
Resultat
Mönster |
---|
\n.*(>|'|=|") [a-zA-Z0-9/+]{86}== |
Strängliteral med Unicode
I följande exempel visas att ett omvänt snedstreck krävs för att inkludera ett Unicode-tecken i en strängliteral.
print space = "Hello\u00A0World"
Resultat
Utrymme |
---|
Hello World |
Ordagrann strängliteral
I följande exempel skapas en sökväg där omvänt snedstreck är en del av sökvägen i stället för escape-tecken. För att göra detta läggs strängtecknet @
till i strängen, vilket skapar en ordagrann strängliteral.
print myPath = @'C:\Folder\filename.txt'
Resultat
myPath |
---|
C:\Folder\filename.txt |
Strängliteral med flera rader
I följande exempel visas syntaxen för en strängliteral med flera rader, som använder nya linjer och flikar för att formatera ett kodblock. Mer information finns i Strängliteraler med flera rader.
print program = ```
public class Program {
public static void Main() {
System.Console.WriteLine("Hello!");
}
}```
Resultat
app |
---|
public class Program { public static void Main() { System.Console.WriteLine("Hello!"); } } |
Sammanfogade strängliteraler
Följande uttryck ger alla en sträng med längd 13. Mer information finns i Sammanlänkning av avgränsade strängliteraler.
print
none = strlen("Hello"', '@"world!"),
whitespace = strlen("Hello" ', ' @"world!"),
whitespaceAndComment = strlen("Hello"
// Comment
', '@"world!"
);
Resultat
inget | Blanksteg | whitespaceAndComment |
---|---|---|
13 | 13 | 13 |
Fördunklat strängliteral
I följande frågeutdata visas strängen h
. Men vid spårning eller telemetri ersätts strängen h
med asterisker. Mer information finns i Dolda strängliteraler.
print blob="https://contoso.blob.core.windows.net/container/blob.txt?"
h'sv=2012-02-12&se=2013-04-13T0...'
Resultat
blob |
---|
https://contoso.blob.core.windows.net/container/blob.txt?sv=2012-02-12& se=2013-04-13T0... |
Relaterat innehåll
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för