正確なキーワードだけでなく、特殊文字や演算子にも一致する正規表現が必要です。正規表現Perlの演算子とマッチして分割する
たとえば、文字列があり、これを正規表現で分割したいとします。
my $data="long i = sbyte.MinValue ; i => sbyte.MaxValue ; > i++";
私は等号文字=
でこれを分割する場合、それは二つの文字列を返す必要があります:私は、その後=>
で分割する場合
long i
sbyte.MinValue ; i => sbyte.MaxValue ; > i++
をそれはターン:
long i = sbyte.MinValue ; i
sbyte.MaxValue ; > i++
ここでは例のコードは次のとおりです。
my $key = "=";
my $data = "long i = sbyte.MinValue ; i => sbyte.MaxValue ; > i++";
#=~/\b$s\b/
#/\b$key\b/
my @matches = ($data =~/\b$key\b/);
my @string = split (/\b$key\b/, $data); # split ~ /^=$/, $data;
if (scalar(@string) > 0) {
foreach my $item (@string) {
print "$item \n";
}
}
else {
print "Nothing found \n";
}
問題は、文字列で検索して分割するオペレータが付属しています。 完全一致は、キーワードや他のテキストで動作しますが、事業者と =
、>=
、<=
、!=
、<<=
、=>>
、++
、--
ようにそれは働いていません。
1つずつ検索してテキストを分割する必要があります。
これはC#タグを持っていますか? – Calum
はいすべてのタグが正規表現の問題はoperatiorで動作しないことです。 – Gaurav
探している結果は何ですか? – xxfelixxx