Je ferais correspondre sur une chaîne les symboles "<", ">", "{", "}". J'utiliseSupports de chaînes de caractères Java
String text="<";
System.out.println(text.matches("(\\W)*([{]|[}]|[<]|[>])"));
//output: false.
et tout va bien, sauf le « < » qui nécessite un espace après afin d'être adapté. Toute suggestion? Merci
Pourquoi ne pas agréger tous ces caractères dans la même classe de caractères comme ça? '' text.matches ("(\\ W) * ([{} <>])")) '' – f1sh
Vous pouvez faire quelque chose comme ceci '\ {' au lieu de '[{]' pour correspondre à un seul caractère; comme 'text.matches (" (\\ W) * (\ {| \} | \ <|\>) ")'; mais cela ne répondra pas à votre question. Que voulez-vous dire par «exige un espace après»? Cela correspond seulement '>' et pas '>'? – NatNgs
Il correspond seulement à "<" (notez l'espace) mais pas à "<". – Discipulos