Экранированные двойные кавычки внутри двойных c

Экранированные двойные кавычки внутри двойных c

При определении строки вам необходимо обрамить ее в одинарные или двойные кавычки. Что случится, если потребуется добавить внутри строки двойные " или одинарные ‘ кавычки?

Чтобы избежать интерпретации кавычки внутри строки как закрывающей, необходимо ее, поместив символ ( ) прямо перед кавычкой. Например:

var sampleStr = "Alan said, "Peter is learning JavaScript".";

символ обратного слеша сообщает интерпретатору JavaScript, что кавычка не является концом строки, но должна быть частью строки. Так что, если вы попробуете отобразить эту строку, вы получите:

Alan said, "Peter is learning JavaScript".

Задание

Используйте символы , чтобы присвоить переменной myStr строку, которая содержит кавычки:

I am a "double quoted" string inside "double quotes"

Создайте регулярное выражение для поиска строк в двойных кавычках ". " .

Важно, что строки должны поддерживать экранирование с помощью обратного слеша, по аналогии со строками JavaScript. Например, кавычки могут быть вставлены как " , новая строка как
, а сам обратный слеш как \ .

В частности, обратите внимание: двойная кавычка после обратного слеша " не оканчивает строку.

Поэтому мы должны искать от одной кавычки до другой, игнорируя встречающиеся экранированные кавычки.

В этом и состоит основная сложность задачи, которая без этого условия была бы элементарной.

Примеры подходящих строк:

В JavaScript приходится удваивать обратные слеши, чтобы добавлять их в строку, как здесь:

  • Сначала ищем открывающую кавычку "
  • Затем, если есть обратный слеш \ (удвоение обратного слеша – техническое, потому что это спец.символ, на самом деле там один обратный слеш), то после него также подойдёт любой символ (точка).
  • Иначе берём любой символ, кроме кавычек (которые будут означать конец строки) и обратного слеша (чтобы предотвратить одинокие обратные слеши, сам по себе единственный обратный слеш не нужен, он должен экранировать какой-то символ) [^"\]
  • …И так далее, до закрывающей кавычки.
Читайте также:  Проблемы с зарядкой iphone

Бывает, что в строку текста нужно вставить кавычки (" "). Sometimes you might want to place quotation marks (" ") in a string of text. Пример: For example:

Она сказала: "Ты этого заслуживаешь!" She said, "You deserve a treat!"

В качестве альтернативы можно также использовать поле Quote в качестве константы. As an alternative, you can also use the Quote field as a constant.

Вставка кавычек в строку в коде To place quotation marks in a string in your code

В Visual Basic вставьте две кавычки в строку в качестве внедренной кавычки. In Visual Basic, insert two quotation marks in a row as an embedded quotation mark. В визуальных C# и C++визуальных элементах вставьте escape-последовательность "как внедренную кавычку. In Visual C# and Visual C++, insert the escape sequence " as an embedded quotation mark. Например, для создания представленной выше строки используйте следующий код. For example, to create the preceding string, use the following code.

Вставьте для получения кавычки символ ASCII или Юникод. Insert the ASCII or Unicode character for a quotation mark. В Visual Basic используйте символ ASCII (34). In Visual Basic, use the ASCII character (34). В визуальном C#элементе используйте символ Юникода (u0022). In Visual C#, use the Unicode character (u0022).

В данном примере использовать u0022 нельзя, поскольку нельзя использовать универсальное имя символа, обозначающее символ в базовом наборе символов. In this example, you cannot use u0022 because you cannot use a universal character name that designates a character in the basic character set. В противном случае вы получите C3851. Otherwise, you produce C3851. Дополнительные сведения см. в разделе Ошибка компилятора C3851. For more information, see Compiler Error C3851.

Читайте также:  Анонимные браузеры для ios

Также можно определить для символа константу и при необходимости использовать ее. You can also define a constant for the character, and use it where needed.

Ссылка на основную публикацию
Что такое синтаксический пакет
Одна из проблем, с которыми можно столкнуться при установке приложения apk на Android — сообщение: «Синтаксическая ошибка» — ошибка при...
Что отражает двоичная матрица
Представление информации в табличной форме широко распростране­но. Чаще всего мы пользуемся прямоугольными таблицами. Простейшая таблица состоит из строк и граф...
Что означают значки в погоде на айфоне
Самые интересные новости о технике Apple и не только. Что означают значки погоды на iPhone? Сегодняшняя тема весьма заинтересует многих...
Что такое синтаксическая ошибка на андроиде
При попытке распаковать приложение из APK на Android может появляться «Синтаксическая ошибка. При синтаксическом анализе пакета возникла неполадка». Это значит,...
Adblock detector