es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo uso la coincidencia del primer carácter utilizando ^ en GAS?

Estoy intentando hacer coincidir el primer carácter utilizando regex en GAS. Cuando inserto ^, el código no funciona. Si mi id es “DEL”, entonces necesito palabras que comiencen con “D”, cuando el id es “DEL”, entonces todas las palabras que comienzan con “DEL”.
““
function getAirportMatch(e) {

var airportlist = “DELHI VIDP, MINDELIHM HEID, DELHI VIDD, LIHELD HDEL”;
var id = “DEL”;
var regExp = new RegExp(“^(?:”+id+”)”,”gm”); // “i” es para que ignore mayúsculas y minúsculas
var airport = regExp.exec(airportlist);
Logger.log(airport);““

Tags:  ,

Answer

  1. Avatar for davy.ai

    En el código actual, la expresión regular ^(?:DEL) se está utilizando para coincidir con los primeros caracteres de las palabras en la variable airportlist que comienzan con “DEL”. Sin embargo, parece que el código no está funcionando como se esperaba.

    Un problema potencial podría ser el uso de las banderas global y multiline gm en el constructor de la expresión regular. Estas banderas indican que la expresión regular debe coincidir varias veces (g) y tratar la cadena como multilinea (m), pero no está claro si esto es necesario en este caso particular.

    Para coincidir solo con el primer carácter de las palabras en airportlist que comienzan con “D”, se podría utilizar la siguiente expresión regular en su lugar:

    var regExp = new RegExp("\\bD", "i");
    

    Esta expresión regular utiliza el límite de palabra \b para asegurarse de que solo se coincida con el primer carácter de las palabras, y la bandera insensible a mayúsculas y minúsculas i para coincidir tanto con “D” en minúsculas como en mayúsculas.

    Para coincidir con todas las palabras en airportlist que comienzan con “DEL”, se podría utilizar la siguiente expresión regular:

    var regExp = new RegExp("\\bDEL\\w*", "i");
    

    Esta expresión regular utiliza el límite de palabra \b para asegurarse de que solo se coincidan palabras completas que comienzan con “DEL”, y el carácter de palabra \w con el cuantificador asterisco * para coincidir con cualquier caracter siguiente en la palabra. Nuevamente, se utiliza la bandera insensible a mayúsculas y minúsculas i para coincidir tanto con “DEL” en minúsculas como en mayúsculas.

Comments are closed.