Как вернуть подстроку строки между двумя строками в Ruby?

Как мне вернуть строку между двумя строковыми маркерами строки в Ruby?

Например, у меня есть:

  • input_string
  • str1_markersstring
  • str2_markersstring

Хотите сделать что-то вроде:

input_string.string_between_markers(str1_markerstring, str2_markerString)

Пример текста:

s
# => "Charges for the period 2012-01-28 00:00:00 to 2012-02-27 23:59:59:<br>\nAny Network Cap remaining: $366.550<br>International Cap remaining: $0.000"
str1_markerstring
# => "Charges for the period"
str2_markerstring
# => "Any Network Cap"
s[/#{str1_markerstring}(.*?)#{str2_markerstring}/, 1]
# => nil  # IE DIDN'T WORK IN THIS CASE

Использование Ruby 1.9.3.

38
задан Sebastian Palma 18 October 2019 в 10:25
поделиться