質問
[左側トリム]などのロジックを使用して文字列をトリムした際に想定通りの結果が得られません。
トリム系ロジックの詳細や使用例を教えてください。
回答
文字列をトリムできるロジックには以下の種類があります。
- 左側トリム
https://www.hulft.com/help/ja-jp/HULFTSquare/Content/Designer/Mapper/TrimLeft.htm - 右側トリム
https://www.hulft.com/help/ja-jp/HULFTSquare/Content/Designer/Mapper/TrimRight.htm - 両側トリム
https://www.hulft.com/help/ja-jp/HULFTSquare/Content/Designer/Mapper/Trim.htm
これらのロジックにて [その他のトリム文字] で設定している値は、文字列としてではなく個々の文字として順不同に判定されます。
例えば、[その他のトリム文字]に「abc」を設定した場合、”abc”という文字列を削除するのではなく、”a”、”b”、もしくは”c”のいずれかであれば、その文字を削除します。
この処理は、”a”、”b”、もしくは”c”以外の文字にあたるところまで繰り返し行われます。
<使用例>
- 入力文字列:xyabcz
- トリムロジックのプロパティ [その他のトリム文字]:yxz
- [左側トリム]を使用した場合
(1) [左側トリム] ロジックでは、入力文字列の左側から判定されます。
(2)「xy」までは [その他のトリム文字] で設定している"y"、”x"の連続であるため削除されます。
(3) 次の「a」については、[その他のトリム文字] にて設定していない文字のため削除されません。
(4) 以降の文字は [その他のトリム文字] で設定している文字の連続が途切れる為、左側トリムの対象となりません。
(5) 結果として、「abcz」が出力されます。
上記と同様の理由より、他のロジックを使用した結果は以下となります。
- [右側トリム]を使用した場合
結果:xyabc
- [両側トリム]を使用した場合
結果:abc
コメント
0件のコメント
記事コメントは受け付けていません。