-1

私はこの文字列を持っています: $29.99. 小数点を削除し、小数部分をタグ.で囲みます: 。99<sup>$29<sup>99</sup>

ただし、形式は変更される可能性があります。小数点は、ドットの代わりにコンマにすることができます: ,99.

おまけ: これとは別に、可変長 (R$、$、Rs など) になる可能性があることを考慮して、通貨ラベルを抽出するための正規表現。

4

3 に答える 3

2
str = '$29.99'
result = str.gsub(/\.(\d+)$/, '<sup>\1<sup>')
于 2013-04-30T13:27:59.790 に答える
1

これにより、ボーナスポイント以外のすべてのシナリオが処理されます。

1.9.3p392 :009 > "$29.99".gsub(/(\d+)[,.](\d+)/, "\\1<sup>\\2</sup>")
 => "$29<sup>99</sup>"
1.9.3p392 :010 > "$29,99".gsub(/(\d+)[,.](\d+)/, "\\1<sup>\\2</sup>")
 => "$29<sup>99</sup>"
1.9.3p392 :011 > "R$29,99".gsub(/(\d+)[,.](\d+)/, "\\1<sup>\\2</sup>")
 => "R$29<sup>99</sup>"
于 2013-04-30T13:59:12.510 に答える
1
1.9.3p385 :012 > "$29.99".gsub(/(\.|,)/,'<sup>').concat("</sup>")
 => "$29<sup>99</sup>" 

そして通貨を抽出します:

1.9.3p385 :020 > ("USD>as$29.99" =~ /(.*?)\d.*/ ; $1)
 => "USD>as$" 
于 2013-04-30T13:56:21.110 に答える