6

引数パーサーを作成します。文字列を、区切り文字が", "前にある場合を除いて配列に分割したいと考えてい"|"ます。つまり文字列

"foo, ba|, r, arg"

結果として

`["foo", "ba|, r", "arg"]`

私はこの正規表現を使用しようとしています: http://regexhero.net/tester/(?<!\|),で動作しますが、試してみると

args.split(/(?<!\|), /)

ruby では、次のエラーが表示されます。undefined (?...) sequence: /(?<!\|), /

4

1 に答える 1

10

Ruby の正規表現エンジンは (まだ) 後読みをサポートしていません。

1.9 に切り替えるか、鬼車を使用する必要があります。


それができない場合は、検索し|,てある種のマーカーに置き換えることができます。やっぱ後は後付けですね|,

次のような正規表現を試すこともできます。

/(?:[^|]), /

しかし、明らかに(?:[^|])幅がゼロではないため、後で追加の作業を行う必要があります。

于 2011-09-30T03:22:23.270 に答える