現在、対処しやすいと思われる問題に直面していますが、これまでのところ解決できていません。「パイプで区切られた値」ファイルがあり、すべての行のすべての値の先頭と末尾のスペースをすべて削除したいと考えています。このファイルには複数の行が含まれる場合があります。
例:
1| | Field2 | Field3
2| 123 | Field2 |
3| | | Field3
スペースを削除した後に欲しいもの:
1||Field2|Field3
2|123|Field2|
3|||Field3
これまでのところ、最後のフィールド (この場合は Field3) が NULL でない限り機能します。これは、上記の例の 2 行目に対応します。最後のフィールドが NULL の場合、その行が次の行と連結され、予想よりも大きな行が作成されます。
これまでの私のコードは次のとおりです。
$res =~ s/\s*\|\s*/\|/g;
前述のように、これはすべての行の最後のフィールドが NULL でない限り機能します。最後のパイプを除くすべてのパイプに一致する正規表現を考え出そうとしましたが、これまでのところ成功していません。
すべてのスペースを削除して行の整合性を維持する方法はありますか?
前もって感謝します、
ジョアン