Опитвам се да анализирам файл с код на Java и да променя коментари, които съдържат име на разработчици и той превключва формата. Пример за коментари са:
//Code modified by James on 10/28/2014 for report enhancement Start --- C1
//Code modified by Steven on 10/28/2014 to show report enhancement Start --- C1
И какви бих искал да станат:
// Company Name report enhancement Start --- C1
// Company Name show report enhancement Start --- C1
Редът replaceAll, който направих, е както следва:
String temp = line.replaceAll("//.*([Jj]ames)|([Ss]teven).*(to|for)", "// Company Name");
Но резултатният низ, който получавам, е:
//Code modified by // Company Name report enhancement End --- C57844
Бих могъл просто да променя заместващия низ, за да има само името на компанията, но не разбирам защо регулярният израз изпуска „//Кода, модифициран от“ в началото, когато е част от съпоставителя. Ще бъдат оценени обяснения защо това се случва и предложения какво да променя регулярния си израз.