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 encontrar una palabra que comience con una letra especial y termine con una letra especial en SQL, Expresión Regular/REGEX.

Actualmente estoy intentando aprender SQL y Regex para analizar datos en Google Data Studio. Traté de encontrar una solución a mi problema, pero no pude encontrar ninguna en línea. Tengo una fuente de datos con consultas de búsqueda y quiero etiquetar todas las consultas que incluyen el nombre de la empresa como “Marcadas”. Esta parte es fácil. Solo escribí lo siguiente para hacerlo:

case
cuando REGEXP_MATCH(Query, ‘.flnk.‘) ENTREGA ‘Marcadas’
OTRO ‘No marcadas’
FINAL

Pero ahora también quiero marcar como “Marcadas” todas las consultas de búsqueda que contienen el nombre de la empresa pero están mal escritas. Así que intenté lo siguiente:

case
cuando REGEXP_MATCH(Query, ‘^[f].*[k]$’) ENTREGA ‘Marcadas’
OTRO ‘No marcadas’
FINAL

Pero con este código, obtengo muchas consultas etiquetadas incorrectamente, porque etiqueta todas las cadenas que comienzan con f y terminan con k. Entonces mi pregunta es, ¿cómo puedo etiquetar solo las palabras como marcadas que comiencen con f y terminen con k?

¡Muchas gracias de antemano!

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Puede intentar utilizar una expresión regular que busque la palabra exacta que desea coincidir. Por ejemplo, si desea coincidir con la palabra flnk, puede utilizar la siguiente expresión regular: \bflnk\b. Esto solo coincidirá con la palabra exacta flnk y no con ninguna otra palabra que comience con f y termine con k.

    Entonces, su código se vería así:

    caso
    cuando REGEXP_MATCH(Query, '\bflnk\b') ENTTONCES 'Branded'
    DE OTRO MODO 'Non-branded'
    FIN
    

Comments are closed.