次のように、文字列内の空白を削除する代わりに正規表現を記述したいと思います。
文字列:user1: group user2 :group2 user3 : group3
〜
user1:group user2:group2 user3:group3
私がこれまでに試したことは次のとおりです。
$argument =~ s/\s+\:/\:/g;
あなたはもうすぐそこにいます:
$argument =~ s/\s*:\s*/:/g;
をエスケープする必要はなく:
、コロンの前後の両方で空白を検索する必要があります。1つ以上を検索する代わりに、0個以上を検索するもの\s+
を使用しました。\s*
そうすれば、前にスペースがなく、後にスペースがない場合、またはその逆の場合に一致します。
編集(コロンの前にもスペースがある可能性があることに気づいていませんでした):
$yourString =~ s/\s*:\s*/:/g;
おもう。私は決してperlを話さないことに注意してください。