ロケール構成のJava NumberFormatでフォーマットされた値と一致する正規表現を生成するクリーンな方法はありますか? またはそうするいくつかのライブラリ?
これは Web ベースのアプリにあり、数値フィールドの JavaScript 検証のために正規表現を jsp ページに渡したいと考えています。ロケールはユーザーごとに異なります。数値形式ごとに特定の正規表現を手作業でコーディングする必要はありません。
ロケール構成のJava NumberFormatでフォーマットされた値と一致する正規表現を生成するクリーンな方法はありますか? またはそうするいくつかのライブラリ?
これは Web ベースのアプリにあり、数値フィールドの JavaScript 検証のために正規表現を jsp ページに渡したいと考えています。ロケールはユーザーごとに異なります。数値形式ごとに特定の正規表現を手作業でコーディングする必要はありません。
残念ながら、独自のパターン言語DecimalFormat
を使用しています。
次のようにパターン文字列を取得できます。
DecimalFormat nf = (DecimalFormat) NumberFormat.getCurrencyInstance();
// ...
String patter = nf.toLocalizedPattern();
私のシステムではどれが返されますか"¤#,##0.00"
それを正規表現に変換する独自の関数をロールできるかもしれませんが (アプリケーションで使用されている場合に限られます)、標準ライブラリにはなく、それを行うサードパーティのライブラリは知りません.