0

すべての空白をハイフンに置き換えたいのですが、スペースが045代わりに-. 式は次のとおりです。

s/ /-/g

s/ /_/g(代わりにアンダースコアを使用)が機能するため、理由i have applesがわかりません

i,045have,045apples
4

3 に答える 3

5

このコードは私にとってはうまくいきます:

#!/usr/bin/perl
use v5.14;
use strict;
use warnings;
my $test = "I like Apples";
$test=~s/ /-/g;
say $test;

を出力しますI-like-Apples

より多くの情報を提供していただければ、コードが正しく動作しない理由についてより多くの情報を提供するお手伝いをいたします。

希望する情報:

  • 出力をどのように表示していますか?
  • 使用している文字セット (シェルの $LANG)
  • どのプラットフォームを使用していますか?
  • perlのバージョンは?
  • コードのどこかでローカルまたは文字セットをいじっていませんか?
  • より多くのコードを提供してください。つまり、置換を行う行だけではありません。どのように文字列を取得し、どのように出力しますか?
于 2012-10-11T23:07:45.043 に答える
2

このコードは私にとって完璧に機能します:

echo I have apples | perl -p -e 's/\ /-/g'
I-have-apples
于 2012-10-12T05:45:13.477 に答える