Régulièrement, les personnages d'échappement sont nécessaires
'$', '(', ')', '*', '+', '.', '[', ']', '?', '//', '^', '{', '}', '|'
Anomalie:
java.util.regex.PatternSyntaxException: Dangling meta. character '*' near index 0
Solution
Il suffit d'ajouter // aux caractères spéciaux.
Remarque: bien que l'utilisation [] soit également possible dans certaines conditions, si les symboles de démarrage des limites de plage ne correspondent pas (, [, {, etc., il sera signalé comme suit:
Anomalie
java.util.regex.PatternSyntaxException: Illegal repetition near index 50
Le code de mot à expression régulière de filtrage Java est le suivant ( Remarque: // Le premier remplacement est requis, sinon il y aura des bogues logiques lors du remplacement de la méthode de remplacement)
/ ** * Échappez des caractères spéciaux réguliers ($ () * +. []? / ^ {}, |) * * @Param mot-clé * @return * / public static String EscapeExPrSpecialword (String Keyword) {if (stringUtils.isnotblank (mot-clé)) {String [] fbsarr = {"//", "$", "(" ")") "*", ". "[", "]", "?", "^", "{", "}", "|" }; for (String key: fbsarr) {if (keyword.contains (key)) {keyword = keyword.replace (key, "//" + key); }}} Retour mot-clé;}Résumer
Ce qui précède est l'intégralité du contenu de cet article. J'espère que le contenu de cet article sera d'une aide à votre étude ou à votre travail. Si vous avez des questions, vous pouvez laisser un message pour communiquer.