2014-12-31 6 views
-2

Строка Ticket-178 (Хорошо) Как это ..Как использовать строки разделить []

Я хочу разделить 178, Хорошо этот раскол ....

Что я могу сделать?

Ticket-178 (Bad)

Я хочу разделить и вход Как это.

178 Является ли ввести Переменная

плоха вход переменная B ..

+0

Можете вложить код? «Ticket-178» - это строка? Что плохого, я не понимаю. Вы хотите «Ticket-178» => 178? –

ответ

1

Это то, что вам нужно?

test1 = "Ticket-178(Good)" 
test2 = "Ticket-178(Bad)" 

def parse_ticket(str) 
    str.match(/(\d+)\((\w+)\)/) do |match| 
    return [match[1],match[2]] 
end 
end 

parse_ticket test1 # => ["178", "Good"] 
parse_ticket test2 # => ["178", "Bad"] 
1

Как это?

string = 'Ticket-178(Bad)' 

matches = /(\d+)\((.+)\)/.match(string) 
matches[1] # => "178" 
matches[2] # => "Bad" 
+0

Спасибо, сэр. Код прост и отлично работает !!!! –

0

Использование split:

a = "Ticket-178(Bad)" 
res = a.split(/\(|\)/) 
#=> ["Ticket-178", "Bad"] 
first_val = res.first.scan(/Ticket-(.*)/)[0][0] 
#=> "178" 
sec_val = res.last 
#=> "Bad" 

Хотя с помощью сканирования непосредственно, как в @ spikermann Ответим является гораздо лучшим способом сделать это.

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