validate test regulares regular regexp probar expresiones expresion example especiales espacio ejemplos caracteres blanco alfanumerico javascript regex actionscript-3

test - regexp javascript



La coincidencia de Regexp de la lista de cadenas de comillas-sin comillas (7)

en Javascript, lo siguiente:

var test = ''"the quick" "brown fox" "jumps over" "the lazy dog"''; var result = test.match(/".*?"/g); alert(result);

cede "el rápido", "zorro marrón", "salta", "el perro perezoso"

Quiero que cada elemento coincidente sea sin comillas: el zorro marrón rápido, salta, el perro flojo

¿Qué regexp hará esto?


Aquí hay una forma:

var test = ''"the quick" "brown fox" "jumps over" "the lazy dog"''; var result = test.replace(/"(.*?)"/g, "$1"); alert(result);


Esto es lo que usaría en actionscript3:

var test:String = ''"the quick" "brown fox" "jumps over" "the lazy dog"''; var result:Array = test.match(/(?<=^"| ").*?(?=" |"$)/g); for each(var str:String in result){ trace(str); }


Esto parece funcionar:

var test = ''"the quick" "brown fox" "jumps over" "the lazy dog"''; var result = test.match(/[^"]+(?=(" ")|"$)/g); alert(result);

Nota: Esto no coincide con los elementos vacíos (es decir, ""). Además, no funcionará en los navegadores que no son compatibles con JavaScript 1.5 (los lookaheads son una característica 1.5).

Consulte http://www.javascriptkit.com/javatutors/redev2.shtml para obtener más información.


La respuesta de grapefrukt también funciona. Me gustaría usar una variación de David

match(/[^"]+(?=("/s*")|"$)/g)

ya que trata adecuadamente con cantidades arbitrarias de espacios en blanco y pestañas entre las cadenas, que es lo que necesitaba.


No es una expresión regular, sino dos expresiones regulares más simples.

var test = ''"the quick" "brown fox" "jumps over" "the lazy dog"''; var result = test.match(/".*?"/g); // ["the quick","brown fox","jumps over","the lazy dog"] result.map(function(el) { return el.replace(/^"|"$/g, ""); }); // [the quick,brown fox,jumps over,the lazy dog]


Puede usar el método Javascript replace () para eliminarlos.

var test = ''"the quick" "brown fox" "jumps over" "the lazy dog"''; var result = test.replace(/"/, '''');

¿Hay algo más que deshacerse de las comillas dobles?


Para hacer coincidir el contenido entre pares de comillas simples y comillas dobles que se ocupan de las que escaparon.

Como el motor de búsqueda me llevó por primera vez aquí, me gustaría orientar a las personas que buscan verificar los pares de citas a la pregunta más genérica: https://.com/a/41867753/2012407 .

La expresión regular obtendrá el contenido completo entre pares bien formados de citas como ''"What/'s up?"'' Por ejemplo, que no están en un comentario de código como // Comment. o /* Comment. */ /* Comment. */ .