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 puedo obtener las palabras entre paréntesis en una cadena?

Tengo varias solicitudes SQL. Por ejemplo:

SELECT COUNT(project_id) AS ‘count’, project.name AS ‘projects’ FROM test
JOIN project ON project_id = project.id

o

SELECT count(*) AS ‘browsers’ FROM test

Quiero recibir palabras que están en ”. Por ejemplo, ‘count’, ‘projects’, ‘browsers’.
Por lo tanto, quiero obtener los nombres de las columnas de la tabla. Pero ¿cómo puedo hacer esto, algo que no entiendo? Hasta ahora solo escribí

String[] str = sqlRequest.split(“FROM”);

pero ¿qué puedo escribir a continuación, no lo adivino? ¿Cómo puedo obtener palabras de estos corchetes?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Puede utilizar una expresión regular para extraer las palabras de los corchetes. Por ejemplo, el siguiente código extraerá las palabras de la primera solicitud SQL:

    String sqlRequest = "SELECT COUNT(project_id) AS 'count', project.name AS 'projects' FROM test JOIN project ON project_id = project.id";
    Pattern pattern = Pattern.compile("'(.*?)'");
    Matcher matcher = pattern.matcher(sqlRequest);
    while (matcher.find()) {
        System.out.println(matcher.group(1));
    }
    

    Esto producirá la siguiente salida:

    count
    projects
    

    Puede utilizar el mismo enfoque para la segunda solicitud SQL.

Comments are closed.