Используйте replaceAll (), чтобы заменить все вхождения символов в строке - PullRequest
0 голосов
/ 03 октября 2018

Допустим, у меня есть пример строки:

String text = "Data/DataFrontEnd/src/pt/data,Data/DataBackEnd/src/pt/groove";

И я хочу получить эту строку в результате процедуры замены:

String textreplaced =  "**/src/pt/data,**/src/pt/groove";

По сути, то, что я хотел, былозаменить все вхождения символов перед / src на ** /.Это может быть сложно, и я попытался захватить группы между запятой и текстом / src, но это не работает, как я ожидал.

Я использовал метод replaceAll () (с Дженкинсом).

Кто-нибудь знает, как мне его получить?

Ответы [ 2 ]

0 голосов
/ 03 октября 2018

Вот альтернативный ответ, не основанный на регулярных выражениях, на случай, если кто-то захочет:

String textreplaced = "";
String[] split = text.split(",");
for (int i = 0; i < split.length; i++) {
    textreplaced += "**" + split[i].substring(split[i].indexOf("/src"));
    if (i != split.length - 1) {
        textreplaced += ",";
    }
}
0 голосов
/ 03 октября 2018

Использование позитивный взгляд :

String text = "Data/DataFrontEnd/src/pt/data,Data/DataBackEnd/src/pt/groove";

System.out.println(text.replaceAll("([\\w/]+)(?=/src)", "**")); // **/src/pt/data,**/src/pt/groove
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...