正規表現を使用して、文字列の先頭から非常に頑固なスペースを削除しようとしています。この文字列は、Text:CSVモジュールを使用してCSVファイルからPerlに解析されており、文字列のダンパーを出力すると、次のようになります。
$VAR1 = ' Mgmt-General-Other';
今、私はこのスペースを削除するために正規表現を使用しようとしました、誰かが私に使用するように言うでしょう:
$string =~ s/\s+$//;
私はすでにこれと同様に試しました:
$string =~ s/\s//g;
と
$string =~ s/^\s//g;
そして、これらのどれもうまくいきませんでした、真ん中のものは私が欲しかったものを除いてすべてからすべてのスペースを引き出しました。2,000行のCSVファイルをループしようとしているので、これを自動化して、この1つの奇妙なインスタンスに特別なケースを作成する必要はありません。
最初のこの文字がスペースまたは空白ではない方法はありますか?または、どうすればそれを取り出すことができますか?
私が試したことをさらに追加します。
$string =~ s/^\s+//;
これが私のコードです:
my @value = @columns[1..12];
my $string = @value[9];
$string =~ s/^\s+//;
$string =~ s/\s+$//;
print Dumper $string;
重要な場合、これらはスクリプトの上部にある私の宣言です。
use strict;
use DBI;
use Getopt::Long;
use Spreadsheet::WriteExcel;
use Spreadsheet::WriteExcel::Utility;
use Data::Dumper;
use Text::CSV;