1

正規表現を使用して一致させ、「変数文字列」に置き換える方法はありますか...

foo_1_a => bar_1_b
foo_2_a => bar_2_b
foo_3_a => bar_3_b

...

たとえば、変数「var」で式を使用する

"に置き換えfoo_var => [0-9]_aますbar_var_b"

具体的には、Ruby を使用してコマンド ラインから 1 つの正規表現/置換を取り込み、これらすべての置換を実行しようとしています。ありがとう。

4

2 に答える 2

1

私があなたを正しく理解していれば、後方参照置換文字列を探しています。これは通常、\1またはによって行われ$1ます。番号1は、以前に一致したグループの順序です。

で一致foo_2_afoo_(\d+)_aます。ここで、括弧はグループを作成します。そして最初のグループ。に置き換えbar_\1_bます。\1含まれます2

Back Referenceの詳細。

于 2013-10-25T19:03:16.083 に答える
0

どうぞ。

result = "foo_1_a".match(/_([0..1])_/){ "bar_#{$1}_b" }
puts result # "bar_1_b" 
于 2013-10-25T19:05:55.457 に答える