En Dart, una raw string es una cadena que ignora caracteres de escape, como \n
o \t
, y los trata como texto literal. Esto es útil cuando se necesita que la cadena mantenga sus caracteres tal cual fueron escritos, sin que Dart intente interpretarlos.
Normalmente, en una cadena de Dart, ciertos caracteres especiales, como \n
(nueva línea) o \t
(tabulación), se interpretan y transforman. Sin embargo, cuando se declara una cadena como raw string, los caracteres de escape no se interpretan. Para declarar una raw string en Dart, basta con anteponer el prefijo r
a la cadena.
void main() {
// Cadena normal
String cadenaNormal = "Esta es una línea.\nEsta es otra línea.";
print(cadenaNormal); // Output: Esta es una línea.
// Esta es otra línea.
// Raw String
String rawString = r"Esta es una línea.\nEsta es otra línea.";
print(rawString); // Output: Esta es una línea.\nEsta es otra línea.
}
En este ejemplo:
cadenaNormal
interpreta el \n
como un salto de línea.
rawString
, al ser precedida por r
, no interpreta \n
como un salto de línea, y lo imprime tal cual.
1. Rutas de archivos: En Windows, las rutas suelen incluir el carácter \
, que podría interpretarse como un carácter de escape.
String ruta = r"C:\Usuarios\Documentos\archivo.txt";
2. Expresiones regulares: A menudo incluyen caracteres especiales que no deben interpretarse.
String expresionRegular = r"^\d{3}-\d{2}-\d{4}$";
3. Mensajes literales: Cadenas de texto que deben imprimirse exactamente como están, sin interpretaciones.
\\
en cadenas estándar.
Para más detalles, consulta la documentación oficial de Dart.
Jorge García
Fullstack developer