Подтвердить что ты не робот

Ruby - удалить шаблон из строки

У меня есть строковый шаблон, который в качестве примера выглядит следующим образом:

WBA - Skinny Joe vs. Hefty Hal

Я хочу усечь шаблон "WBA -" из строки и вернуть только "Skinny Joe vs. Hefty Hal".

4b9b3361

Ответ 1

Предполагая, что пятно "WBA" будет последовательностью любой буквы или числа, за которым следует пробел, тире и пробел:

str = "WBA - Skinny Joe vs. Hefty Hal"
str.sub /^\w+\s-\s/, ''

Кстати, RegexPal - отличный инструмент для тестирования регулярных выражений, подобных этим.

Ответ 2

Если вам нужна более сложная замена строки, вы можете изучить более сложное регулярное выражение. Otherise:

Держите это просто! Если вам нужно удалить "WBA - " с начала строки, используйте String#sub.

s = "WBA - Skinny Joe vs. Hefty Hal"
puts s.sub(/^WBA - /, '')
# => Skinny Joe vs. Hefty Hal

Ответ 3

Вы также можете удалить первое вхождение шаблона со следующим фрагментом:

s[/^WBA - /] = ''