Considere el siguiente fragmento de código:¿Cómo encontrar la palabra exacta usando una expresión regular en Java?
String input = "Print this";
System.out.println(input.matches("\\bthis\\b"));
salida
false
¿Qué podría ser posiblemente mal con este enfoque? Si es incorrecto, ¿cuál es la solución correcta para encontrar la coincidencia exacta de palabras?
PD: He encontrado una variedad de preguntas similares aquí, pero ninguna de ellas proporciona la solución que estoy buscando. Es un problema directo para el cual no he podido encontrar la solución adecuada.
Gracias de antemano.
'find()' devuelve un valor booleano que indica si la coincidencia fue exitosa o no. Debería * nunca * llamar a 'find()' e ignorar el resultado. Lo mismo para 'matches()' y 'lookingAt()'. Además, los números de grupo están indexados de uno, no de cero. El primer "grupo", "grupo (0)", es uno artificial que representa la coincidencia completa. –