- 102 名前:デフォルトの名無しさん mailto:sage [2021/04/01(木) 15:56:27.00 ID:yB6nLlLi0.net]
- >>92
Ruby で作った。 正規表現の否定先読みなどを使えば、もっとスマートに書けるかも # ? は、直前のパターンの0〜1回の繰り返し。「https?」は、「http|https」と同じ意味 re = %r!(https?://)! #=> https?:\/\/ input_str = %w(https://a/b.html c https://x/y).join #=> "https://a/b.htmlchttps://x/y" pos = input_str.size # 文字列の末尾の位置 results = [ ] # 文字列の末尾から、一致させていく while pos = input_str.rindex( re, pos ) # 一致した位置から末尾までを削除して、それを配列の先頭に追加していく results.unshift input_str.slice!( pos..-1 ) end p results #=> ["https://a/b.html", "c", "https://x/y"]
|

|