Это регулярное выражение, которое используется для поиска блочных комментариев, и оно работает абсолютно нормально
/\\*(?>(?:(?>[^*]+)|\\*(?!/))*)\\*/
Мне просто нужно немного его изменить. Найдите точку с запятой (;), которая может существовать в комментариях блока, и замените ее пробелом.
В настоящее время я делаю это
while (m.find()) {
if (m.group().contains(";")) {
replacement = m.group().replaceAll(";", "");
m.appendReplacement(sb, replacement);
}
}
m.appendTail(sb);
Но мне нужно заменить его на str.replace. Все виды утверждений. Короче говоря, все, что более эффективно, потому что я получаю исключение из памяти. Я исправил несколько других регулярных выражений, которые вызывали то же исключение, и они работают нормально. Я надеюсь, что это регулярное выражение также может быть оптимизировано.
--- Редактировать ---
Это строка, с которой вы можете проверить это регулярное выражение
/* this* is a ;*comment ; */
/* This ; is*
another
;*block
comment;
;*/
Спасибо