0

CSVファイルがあります。特定の列には多くのエントリがあり、それらは改行文字"\n"で区切られていましたが、発生しませんでした。影響を受ける列のサンプル データは次のとおりです。

30 units - R135                 50 units - R225                  80 units - R360

これを 3 つの列に分割する方法はありますか? 列数は固定ではありません。エントリには多くのスペース文字 (2 つ以上) を使用する必要があると思いsplitます。私は欲しい:

data = "that long string"
# Some operation
result = ["30 units - R135", "50 units - R225", "80 units - R360"]

私はこのようなことを試しました。しかし、うまくいきませんでした。結果は同じ文字列でした。

a.split('/(\s){3,}/')

データを分割するには、どのような方法をとればよいでしょうか?

4

2 に答える 2

3

みたいな発言

a.split('/(\s){3,}/')

stringaの出現箇所で文字列を分割しますが、これは (当然のことながら) ターゲット文字列のどこにも出現しないため、そのまま残ります。 /(\s){3,}/

次のように記述して正規表現を指定する必要があります

data = '30 units - R135                 50 units - R225                  80 units - R360'

result = data.split /\s{3,}/

p result

出力

["30 units - R135", "50 units - R225", "80 units - R360"]
于 2013-08-03T16:25:40.957 に答える