Исходя из поставленного вопроса, скорее всего, вы хотите:
fields[i] = fields[i].replaceAll(" , flickr:user=[^ ]* ", ""); // or " "
Это будет соответствовать строке, включая значение от user
до первого пробела, но не включая его, после чего следуети замените его пустой строкой или одним пробелом. Однако это (без запятой) даст вам пустой результат с показанным вами вводом.Вы действительно этого хотите?
Я также не уверен, где " , "
в начале вписывается в пример, который вы показали.
Причина ваших трудностей в том, что неограниченный1012 * будет соответствовать всему от этой точки до конца ввода (даже если это ничего не значит; для этого *
).Для анализатора регулярных выражений на основе строки это конец строки.