Попробуйте это:
/\s(abc_.*)$/m
Вот закомментированная версия, чтобы вы могли понять, как она работает:
\s # match one whitepace character
(abc_.*) # capture a string that starts with "abc_" and is followed
# by any character zero or more times
$ # match the end of the string
Поскольку регулярное выражение имеет переключатель "m
", оно будет многострочным. Это позволяет $
соответствовать концу каждой строки, а не концу всей строки.
Редактировать: Вам не нужно обрезать пропуски, так как вторая группа захвата содержит только текст. После краткого сканирования этого урока Я считаю, что это способ получить значение группы захвата с помощью Groovy:
matcher = (yourString =~ /\s(abc_.*)$/m)
// this is how you would extract the value from
// the matcher object
matcher[0][1]