J'ai un problème avec le replaceAll pour une chaîne multiligne:Java regex replaceAll multiligne
String regex = "\\s*/\\*.*\\*/";
String testWorks = " /** this should be replaced **/ just text";
String testIllegal = " /** this should be replaced \n **/ just text";
testWorks.replaceAll(regex, "x");
testIllegal.replaceAll(regex, "x");
Les travaux ci-dessus pour Testworks, mais pas pour testIllegal !? Pourquoi est-ce et comment puis-je surmonter cela? J'ai besoin de remplacer quelque chose comme un commentaire/* ... */qui couvre plusieurs lignes.
Et qu'en est-il de cette chaîne: '" Chaîne s = \ "/ * \";/* commentaire */"' –
Eh bien, le point est que l'expression rationnelle MATHING ne doit correspondre qu'au début de la chaîne. Maintenant, il ressemble à ceci :(? S)^\\ s */\\ *. * \\ */Je ne sais pas si, pour le rendre réticent (? S)^\\ s */\\ *. *? \\ */ – Robert