Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Nyers sztringkonstansszöveg –
A nyers sztringkonstans legalább három dupla idézőjel (") karakterrel kezdődik és végződik:
var singleLine = """This is a "raw string literal". It can contain characters like \, ' and ".""";
A nyers sztringkonstansok több sorra is kiterjedhetnek:
var xml = """
<element attr="content">
<body>
</body>
</element>
""";
A többsoros nyers sztringkonstans értelmezését a következő szabályok szabályozzák:
- A nyitó idézőjeleknek a soruk utolsó nem üres karaktereknek kell lenniük, a záró idézőjeleknek pedig az első nem üres karaktereknek kell lenniük a sorban.
- A záró idézőjelek bal oldalán lévő üres tér a nyers sztringkonstans összes sorából törlődik.
- Az ugyanazon a sorban lévő nyitó idézőjeleket követő szóközök figyelmen kívül lesznek hagyva.
- A sztringkonstans csak a nyitó idézőjelet követő sorokat tartalmazza.
- Ha egy szóköz előzi meg ugyanazon a vonalon a véghatárolást, a térköz pontos számának és típusának (például szóközök és lapok) az egyes tartalomsorok elején kell léteznie. A szóköz nem felel meg a vízszintes lapnak, és fordítva.
- A záró idézőjelek előtti új vonal nem szerepel a literális sztringben.
Jótanács
A Visual Studio és a C#Dev Kit érvényesítési és szintaxiskiemelést biztosít, ha a nyers sztringkonstansok JSON-adatokat vagy reguláris kifejezéseket tartalmaznak.
Az eszközök elemzik a szöveget. Ha az eszközök biztosak abban, hogy a szöveg JSON-t vagy reguláris kifejezést jelöl, a szerkesztő szintaxisszínezést biztosít.
Ezt a felhasználói élményt úgy javíthatja, ha a formátumot jelző deklaráció fölé fűz egy megjegyzést:
-
// lang=jsonA nyers sztringkonstans JSON-adatokat jelöl. -
// lang=regexazt jelzi, hogy a nyers sztringkonstans egy reguláris kifejezést jelöl.
Amikor egy nyers sztringkonstanst használ argumentumként, amelyben a paraméter a formátum jelzésére szolgál System.Diagnostics.CodeAnalysis.StringSyntaxAttribute , ezek az eszközök bizonyos formátumtípusok esetében ellenőrzik a nyers sztring literálját. A JSON és a regex is támogatott.
Bizonyos formátumok esetében a megjegyzés vagy az attribútum lehetővé teszi a kódjavaslatok által a formátumon alapuló sztringkonstansok javítását.
Előfordulhat, hogy létre kell hoznia egy nyers sztringkonstanst, amely három vagy több egymást követő dupla idézőjelet tartalmaz. A nyers sztringkonstansok legalább három dupla idézőjelből álló sorozattal kezdődhetnek és végződhetnek. Ha a sztringkonstans három egymást követő dupla idézőjelet tartalmaz, a nyers sztringkonstans négy dupla idézőjellel kezdődik és végződik:
var moreQuotes = """" As you can see,"""Raw string literals""" can start and end with more than three double-quotes when needed."""";
Ha idézőjelekkel kell kezdenie vagy befejeznie egy nyers sztringkonstanst, használja a többsoros formátumot:
var MultiLineQuotes = """"
"""Raw string literals""" can start and end with more than three double-quotes when needed.
"""";
A nyers sztringkonstansok interpolált sztringekkel is kombinálhatók a {} kimeneti sztringbe való beágyazásához. Az interpolált nyers sztringkonstansban több $ karaktert is használhat a kimeneti sztringbe való beágyazáshoz { és } a karakterek beágyazásához anélkül, hogy elszabadulna.
A nyers sztringkonstans tartalma nem tartalmazhat olyan összefüggő " karaktereket, amelyek hossza egyenlő vagy nagyobb, mint a nyers sztringkonstans elválasztó hossza. A sztringek """" """ """"""""""" """""" """"" """" """ """"""" például jól formázottak. A sztringek """ """ """""" """" """ azonban nem formázottak