で文字列の配列に文字列を解析:は、私は、この形式の文字列を持っているRubyの
"dataA\r\r\n" + "dataB\r\r\n" + "dataC\r\r\n" + "dataD"
最後のデータが"\r\r\n"
を持っていません。
私はそれを解析し、それに文字列の配列を変更したいと思います:
["dataA", "dataB", "dataC", "dataD"]
私はこれを行うための最善の方法は何か疑問に思って。
で文字列の配列に文字列を解析:は、私は、この形式の文字列を持っているRubyの
"dataA\r\r\n" + "dataB\r\r\n" + "dataC\r\r\n" + "dataD"
最後のデータが"\r\r\n"
を持っていません。
私はそれを解析し、それに文字列の配列を変更したいと思います:
["dataA", "dataB", "dataC", "dataD"]
私はこれを行うための最善の方法は何か疑問に思って。
str = "dataA\r\r\n" + "dataB\r\r\n" + "dataC\r\r\n" + "dataD"
#=> "dataA\r\r\ndataB\r\r\ndataC\r\r\ndataD"
str.split
#=> ["dataA", "dataB", "dataC", "dataD"]
がString#split用ドキュメントの第四項を参照してください。 Rubyの「空白」の定義は、String#stripの文書に記載されています。水平タブ、改行、垂直タブ、フォームフィード、キャリッジリターン、スペース:
str = "a" + "b\t\t" + "c\n\n\n" + "d\v\v" + "e\f" + "f\r\r" + "g " + "h"
str.split
#=> ["ab", "c", "d", "e", "f", "g", "h"]
についてしたがって、これらのバックスラッシュ文字の定義については、「バックスラッシュ記法」hereため
str.split(/[\t\n\v\f\r \0]+/)
#=> ["ab", "c", "d", "e", "f", "g", "h"]
検索と同等です。
あなたは、それぞれの値の間に共通点である\r\r\n
を渡すことによって、あなたの連結文字列を分割することができます:
a = "dataA\r\r\n" + "dataB\r\r\n" + "dataC\r\r\n" + "dataD"
p a.split(/\r\r\n/)
# => ["dataA", "dataB", "dataC", "dataD"]
ありがとう、ちょうど私が必要なもの。 –
'dataC'を2回しませんか? –
さて、それは私の間違いでした。私はそれを変更しました。 –
4つの文字列があります。 –