2015-03-26 2 views
0

Я хочу, чтобы удалить какую-то часть строки с использованием рубинового регулярное выражение:Как использовать GSUB регулярное выражение в рубин

значение = LOCALHOST: 8393/Foobar/1 тест: foobartest Я хочу удалить «тест» из моей строки [локальный: 8393/Foobar/1 тест: foobartest] и остальные значения, так что выход должен выглядеть следующим образом:

localhost:8393/foobar/1 

Как сделать это в Ruby? Можете ли вы поделиться примером для этого?

Оцените вашу помощь заранее! Спасибо!

+0

Во-первых, вам нужно добавить кавычки во второй и четвертой строках, чтобы сделать их строки , Читатель не может определить, начинается ли первая строка «value = ...» или «localhost ...». Далее, каков ваш критерий для выбора части строки? Например, вы хотите принять все до первого символа пробела или всего до одного или нескольких пробелов, за которыми следует «тест» или «тест»: «или что-то еще? Пожалуйста, исправьте и уточните, отредактировав свой вопрос, а не пытайтесь объяснить в –

+0

Спасибо за предложение Кэри! Просто я спросил, как удалить ключевое слово «test» и остальную часть строки, поэтому я считаю, что не имеет значения, строка должна начинаться с value = или localhost .... –

ответ

0

Я хотел бы сделать что-то вроде этого:

value = 'localhost:8393/foobar/1 test:foobartest' 

value.split.first 
#=> "localhost:8393/foobar/1" 

Или, если вы хотите использовать регулярное выражение:

value.sub(/ test.*/, '') 
"localhost:8393/foobar/1" 
+0

Большое спасибо ! Оно работает :) –

Смежные вопросы