J'ai besoin d'un programme Java pur pour rechercher sur une chaîne donnée "trouver les mots les uns près des autres" - chaque autre distance doit être spécifiée. Plus spécifiquement dit: - trouve mot1 et mot2 dans n'importe quel ordre, tant qu'ils se produisent à une certaine distance les uns des autres. Par exemple: - pour rechercher un "cancer" et des "problèmes" dans les 3 mots les uns des autres dans une chaîne donnée - si trouvé retour "vrai" sinon retourner "faux".Java: - Recherche de chaîne de manière proche
Chaîne term = "problèmes de cancer"; String text = "Les médecins ont découvert de nombreux problèmes de poitrine liés au cancer au Japon pendant la seconde guerre mondiale."; int distance = 3; // la distance peut varier
Je préfère la solution Java pure plutôt que la solution regex.
"Je préfère la solution pure Java plutôt que la solution regex." - et nous préférons que vous nous montriez ce que vous avez essayé jusqu'ici afin que nous puissions vous aider à résoudre un problème. Nous ne résolvons pas toute la tâche pour vous. – luk2302
@ luk2302 Tout OP a est [montré ici] (https://stackoverflow.com/questions/45598271/java-php-preg-match), je suppose. –
Veuillez suivre le String text = "les médecins ont trouvé de nombreux problèmes liés au cancer au Japon pendant la seconde guerre mondiale."; approche regex 1: - \\ bcancer \\ W +: {1,6} problèmes \\ b approche regex 2 (\\ w + \\ W +?): -? \ b (: (> cancer() | problèmes() | (?> \ 1 | \ 2) \ w +) \ b \ W *?) {0,2} \ 1 \ 2 \ b – sunone5