Question

Par exemple, j'ai une chaîne comme ceci: abc123 [*] xyz [#] 098 [~] F9E

[*], [#] et [~] représente 3 différents caractères non-imprimables. Comment puis-je les remplacer par « X » en Java?

Frank

Était-ce utile?

La solution

Je ne sais pas si je comprends bien vos questions. Si vous pouvez le formuler mieux, je pense que le simple remplacement d'expression régulière peut être tout ce dont vous avez besoin.

String r = s.replaceAll(REGEX, "X");

REGEX dépend de ce que vous avez besoin:

"\\*|#|~"   : matches only '*', "#', and '~'
"[^\\d\\w]" : matches anything that is neither a digit nor a word character
"\\[.\\]"   : matches '[' followed by ANY character followed by ']'
"(?<=\\[).(?=\\])" : matches only the character surrounded by '[' and ']'

Autres conseils

Ce SO Q & A montre un moyen de tester, en Java, si un caractère donné est imprimable.

Comme vous le savez sûrement, en Java, vous ne pouvez pas modifier directement une chaîne: plutôt, vous faites un nouveau

scroll top