Перейти к содержанию

Необработанные строковые литералы (raw string literals)

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...

[ Полезный рекламный блок ]

Попробуйте свои силы в игре, где ваши навыки программирования на C# станут решающим фактором. Переходите по ссылке 🔰.


Начиная с C# 11, можно использовать необработанные строковые литералы для упрощения создания строк, которые являются многострочными, или использовать любые символы, требующие escape-последовательностей.

Многое из того, что помещается в строковые литералы, является своего рода «кодом» — не только текст программы, но и данные JSON и XML, HTML, регулярные выражения, SQL-запросы и т.д. Очень неприятно, когда многие специальные символы, которые встречаются в таком тексте, имеют особое значение в строковых литералах C#! В качестве примера можно привести \ и «, к которым в интерполированных строках присоединяются { и }. Необходимость экранировать все эти символы – усложняет процесс разработки.

Необработанный строковый литерал разграничивается как минимум тремя двойными кавычками:

Если необходимо использовать 3 кавычки как часть содержимого, используйте 4 для обозначения начала и конца строки:

Добавляя в строку C# или Html верстку, так же возникали проблемы форматирования текста, попробуем выполнить вставку с применением необработанных строковых литералов:

Хочу так же обратить внимание, что начиная с C# 11, при вставке многоуровневого текста в обычную строку, происходит автоматическое преобразование текста в одну строку с добавлением символов управляющей последовательности:

При использовании нескольких рядков текста, многострочный необработанный строковый литерал требует открытия и закрывающей последовательности кавычек в собственной строке:

При создании текста, включающего символы, требующие escape-последовательностей при использовании строковых литералов с кавычками или строковых литералов, следует использовать именно необработанные строковые литералы, так как они справятся с этой задаче лучше любого другого инструмента!

Рассмотрим на примере следующей Json структуры файла:

В коде C#, определим 3 вида строки: обычную, вербальную и необработанную:

Вывод идентичен, а реализация и восприятие с кода отличается.

Опубликовано в рубрикеЯзык Программирования C#
Подписаться
Уведомить о
guest
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x