ExpertiDict

C++ · Essencial · Inglês · Técnico

raw string literal

ɹɔː stɹɪŋ ˈlɪt.ɚ.əlsubstantivo

Literal de texto com prefixo R em que barras invertidas e aspas não precisam de escape, e as quebras de linha são preservadas. Útil para regex, JSON e caminhos.

Onde usar

Aparece em expressões regulares, trechos de JSON e caminhos do Windows, onde os escapes tornariam o texto ilegível. Um delimitador personalizado resolve o caso de o texto conter o fecho do literal.

Em código

std::string p = R"(C:\temp\novo.txt)";
std::regex r(R"(\d+\.\d+)");
std::string j = R"json({"a": 1})json";

Exemplos

Use a raw string literal for the regex, no escaping needed.

Use um raw string literal para a regex, sem escapes.

The JSON fits in a raw string literal.

O JSON cabe em um raw string literal.

Cuidado

Espaços e quebras de linha dentro do literal fazem parte do texto, inclusive a indentação.

Sinônimos

literal bruto

Veja também

Todos os termos de C++