Java заменить все игнорировать регистр и специальные символы - PullRequest
2 голосов
/ 25 февраля 2012

Это просто пример кода, который я пытаюсь выполнить.

String s = "hello(1234aA)something";
String replaceString = "(1234aa)";
String s2 = s.replaceAll("(i?)" + replaceString, "something");

Строка s будет одинаковой, но может отличаться в случае, поэтому я использую (i?)заменить все.Как я могу сделать регулярное выражение игнорировать специальные

1 Ответ

3 голосов
/ 25 февраля 2012

Используйте quote(), кажется, вы уже выяснили случай игнорирования, но вы должны использовать (? I), а не (i?).

String s = "hello(1234aA)something";
String replaceString = "(?i)" + Pattern.quote("(1234aa)");
String s2 = s.replaceAll(replaceString, "something");

Это должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...