レポートのデザインにiReportを使用しています。xxxxxxxxxxx
toなどの文字列をフォーマットする必要がありますxxx xxx xxx xxx
。日付、数値、時間、通貨のパターンを指定できます。
しかし、文字列に対してこれを行うにはどうすればよいですか? 誰でも私にこれについての洞察を提供できますか。
レポートのデザインにiReportを使用しています。xxxxxxxxxxx
toなどの文字列をフォーマットする必要がありますxxx xxx xxx xxx
。日付、数値、時間、通貨のパターンを指定できます。
しかし、文字列に対してこれを行うにはどうすればよいですか? 誰でも私にこれについての洞察を提供できますか。
置換を含む正規表現を使用してみてください。
データが呼び出され$F{field}
、それがjava.lang.String
であり、現在の値が「0123456789ab」であり、「012 3456789ab」であるとします。テキストフィールドの値としてこれを試してください。
$F{field}.replaceAll("^(...)(...)(...)(...)$", "$1 $2 $2 $4")
より一般的なものが必要な場合は、正規表現と置換でよりかわいくすることができます。たとえば、常にトリプレットが必要で、いくつあるかは気にしない場合は、次のように実行できます。
$F{field}.replaceAll("(...)", "$1 ").trim()
trim
最後のトリプレットには余分なスペースが追加されるため、が必要になることに注意してください。