Het gegevenstype tekenreeks
Het string
gegevenstype vertegenwoordigt een reeks van nul of meer Unicode-tekens .
Zie Tekenreeksoperators voor meer informatie over tekenreeksqueryoperators.
Notitie
- Tekenreeksen worden intern gecodeerd in UTF-8. Ongeldige (niet-UTF8) tekens worden vervangen door U+FFFD Unicode-tekens tijdens de opname.
- Kusto heeft geen gegevenstype dat gelijk is aan één teken. Eén teken wordt weergegeven als een tekenreeks met de lengte 1.
- Wanneer u het
string
gegevenstype opneemt en één tekenreekswaarde in een record groter is dan 1 MB (gemeten met UTF-8-codering), wordt de waarde afgekapt en slaagt de opname. Als één tekenreekswaarde in een record, of de hele record, de toegestane gegevenslimiet van 64 MB overschrijdt, mislukt de opname.
string
letterlijke waarden
U kunt dubbele aanhalingstekens of enkele aanhalingstekens gebruiken om letterlijke tekenreeksen in querytekst te coderen. Bij dubbele aanhalingstekens moet u geneste dubbele aanhalingstekens met een backslash (\
) ontlopen. Bij enkele aanhalingstekens moet u geneste enkele aanhalingstekens escapen en hoeft u dubbele aanhalingstekens niet te escapen.
Gebruik het backslashteken om de aanhalingstekens, tabtekens (\t
), nieuwe regeltekens (\n
) en de backslash zelf () te laten ontsnappen.\\
Notitie
Het nieuwe regelteken (\n
) en het retourteken (\r
) moeten tussen aanhalingstekens worden geplaatst, tenzij letterlijke tekenreeksen van meerdere regels worden gebruikt.
Letterlijke tekenreeksen van verbatim
Letterlijke letterlijke tekenreeksen worden ook ondersteund. In deze vorm staat het backslashteken (\
) voor zichzelf en is het geen escape-teken. Het prependeren van het @
teken op letterlijke tekenreeksen dient als een verbatim-id. In letterlijke tekenreeksen worden dubbele aanhalingstekens met dubbele aanhalingstekens en enkele aanhalingstekens met enkele aanhalingstekens escaped.
Zie Verbatim-tekenreeks voor een voorbeeld.
Notitie
Het nieuwe regelteken (\n
) en het retourteken (\r
) moeten tussen aanhalingstekens worden geplaatst, tenzij letterlijke tekenreeksen van meerdere regels worden gebruikt.
Letterlijke tekenreeksen met meerdere regels
Geef een letterlijke tekenreeks met meerdere regels aan met een 'triple-backtick chord' (''') aan het begin en einde van de letterlijke waarde.
Zie Letterlijke tekenreeks met meerdere regels voor een voorbeeld.
Notitie
- Letterlijke tekenreeksen met meerdere regels ondersteunen nieuwe regel (
\n
) en retourneren (\r
). - Letterlijke tekenreeksen met meerdere regels bieden geen ondersteuning voor escape-tekens. Vergelijkbaar met letterlijke letterlijke tekenreeksen.
- Letterlijke tekenreeksen met meerdere regels bieden geen ondersteuning voor verdoezeling.
Samenvoeging van letterlijke tekenreeksen gescheiden
Wanneer twee of meer aangrenzende letterlijke tekenreeksen in een Kusto-query geen scheiding hebben, worden ze automatisch gecombineerd tot een nieuwe letterlijke tekenreeks. En als de letterlijke waarden van tekenreeksen alleen worden gescheiden door witruimte of opmerkingen, worden ze ook gecombineerd tot een nieuwe letterlijke tekenreeks.
Zie Letterlijke tekenreeksen samengevoegd voor een voorbeeld.
Verborgen letterlijke tekenreeksen
Query's worden opgeslagen voor telemetrie en analyse. Ter bescherming van gevoelige informatie, zoals wachtwoorden en geheimen, kunt u een tekenreeks markeren als een verborgen letterlijke tekenreeks. Deze gemarkeerde tekenreeksen worden vervangen door sterretjes (*
) in de querytekst.
Een verborgen letterlijke tekenreeks wordt gemaakt door een h
of een H
teken voor te laten prependeren vóór een standaardteken of letterlijke tekenreeks.
Zie Verborgen letterlijke tekenreeks voor een voorbeeld.
Belangrijk
Markeer alle letterlijke tekenreeksen die geheime informatie bevatten als verborgen letterlijke tekenreeksen.
Tip
In sommige situaties bevat slechts een deel van de letterlijke tekenreeks geheime informatie. In dergelijke gevallen deelt u de letterlijke in een niet-geheim deel en een geheim gedeelte. Vervolgens labelt u alleen het geheime gedeelte als verborgen.
Voorbeelden
Letterlijke tekenreeks met aanhalingstekens
In het volgende voorbeeld ziet u hoe u aanhalingstekens gebruikt binnen letterlijke tekenreeksen die worden omsloten door enkele aanhalingstekens en dubbele aanhalingstekens. Zie Letterlijke tekenreeksen voor meer informatie.
print
s1 = 'string with "double quotes"',
s2 = "string with 'single quotes'"
Uitvoer
s1 | s2 |
---|---|
tekenreeks met 'dubbele aanhalingstekens' | tekenreeks met 'enkele aanhalingstekens' |
Letterlijke tekenreeks met backslash escape
In het volgende voorbeeld wordt een patroon voor reguliere expressies gemaakt met behulp van backslashes om speciale tekens te escapen. Zie Letterlijke tekenreeksen voor meer informatie.
print pattern = '\\n.*(>|\'|=|\")[a-zA-Z0-9/+]{86}=='
Uitvoer
Patroon |
---|
\n.*(>|'|=|") [a-zA-Z0-9/+]{86}== |
Letterlijke tekenreeks met Unicode
In het volgende voorbeeld ziet u dat een backslash nodig is om een Unicode-teken op te nemen in een letterlijke tekenreeks.
print space = "Hello\u00A0World"
Uitvoer
schijfruimte |
---|
Hallo wereld |
Letterlijke tekenreeks van verbatim
In het volgende voorbeeld wordt een pad gemaakt waarin de backslashes deel uitmaken van het pad in plaats van escape-tekens. Om dit te doen, wordt het tekenreeks @
voorafgegaan door de tekenreeks, waardoor een letterlijke letterlijke tekenreeks wordt gemaakt.
print myPath = @'C:\Folder\filename.txt'
Uitvoer
myPath |
---|
C:\Folder\filename.txt |
Letterlijke tekenreeks met meerdere regels
In het volgende voorbeeld ziet u de syntaxis voor een letterlijke tekenreeks met meerdere regels, waarbij nieuwe regels en tabbladen worden gebruikt om een codeblok op te maken. Zie Letterlijke tekenreeksen met meerdere regels voor meer informatie.
print program = ```
public class Program {
public static void Main() {
System.Console.WriteLine("Hello!");
}
}```
Uitvoer
programma |
---|
public class Program { public static void Main() { System.Console.WriteLine("Hello!"); } } |
Letterlijke tekenreeksen samengevoegd
De volgende expressies leveren allemaal een tekenreeks met de lengte 13 op. Zie Samenvoeging van letterlijke tekenreeksen voor meer informatie.
print
none = strlen("Hello"', '@"world!"),
whitespace = strlen("Hello" ', ' @"world!"),
whitespaceAndComment = strlen("Hello"
// Comment
', '@"world!"
);
Uitvoer
geen | Whitespace | witruimteAndComment |
---|---|---|
13 | 13 | 13 |
Verborgen letterlijke tekenreeks
In de volgende queryuitvoer is de h
tekenreeks zichtbaar. Bij tracering of telemetrie wordt de h
tekenreeks echter vervangen door sterretjes. Zie Letterlijke tekenreeksen verborgen voor meer informatie.
print blob="https://contoso.blob.core.windows.net/container/blob.txt?"
h'sv=2012-02-12&se=2013-04-13T0...'
Uitvoer
blob |
---|
https://contoso.blob.core.windows.net/container/blob.txt?sv=2012-02-12& se=2013-04-13T0... |
Gerelateerde inhoud
Feedback
https://aka.ms/ContentUserFeedback.
Binnenkort beschikbaar: In de loop van 2024 zullen we GitHub-problemen geleidelijk uitfaseren als het feedbackmechanisme voor inhoud en deze vervangen door een nieuw feedbacksysteem. Zie voor meer informatie:Feedback verzenden en weergeven voor