
perlのs構文で置き換えに式を用いたいが使い方が分からない
下記の$aの中のcounterの値を夫々1から3に変更した内容を求めたい。
$a="UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=1));";
$a="UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=2));";
$a="UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=3));";
それを求め様として、下記を実行したが下記の様な結果になる。
$a="UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=counter));";
for $i(1 .. 3){
$a =~ s/counter/$i/e;
print "$a\n";
}
結果は下記です。
UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=1));
UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=1));
UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=1));
何処が可笑しいのだろうか。修正個所とその時のperlのソースを提示願います。
宜しくお願いします。

No.1ベストアンサー
- 回答日時:
あなたが提示されたコードの場合、
$1が1の場合は、成功しますが、$が2の場合は、成功しません。
$aの"counter"の部分は既に1に置き換えられているため、counterの文字が存在しないからです。
以下のようにしてください
----------------------------------
$base="UPDATE SQL詳細 SET SQL詳細.sqlstr = replace_char([sql]) WHERE (((SQL詳細.type)=counter));";
for $i(1 .. 3){
$a = $base;
$a =~ s/counter/$i/e;
print "$a\n";
}
----------------------------------
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
INDIRECT 横に再度抽出したい
-
Strawberry Perl for Windows ...
-
perlのプログラミング 部分入れ...
-
Perlでファイルの末尾から指定...
-
perl の open について教えてく...
-
Perl言語について。
-
ファイルをディレクトリ分配の...
-
アルファベットに付いて質問し...
-
#!/usr/bin/perlで書きだしたCG...
-
Perlのエラーについてご教授く...
-
perlのflock関数でロックをかけ...
-
AI sisterとは、偽物の人ですか?
-
bashスクリプト
-
ファイルアイコンの左下に緑の□...
-
perlプログラミング 空白行削除
-
perlでリテラル値はメモリにど...
-
perlで2次元配列をサブルーチ...
-
Perlで時間の計算
-
perlについて
-
perlのrequireの動き方について...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストファイルで提出とは?
-
Perlのエラーについてご教授く...
-
perlをバージョンアップしたら...
-
Perlで時間の計算
-
Wallpaper Engineでおすすめの...
-
Perl言語について。
-
perlで2次元配列をサブルーチ...
-
Strawberry Perl for Windows ...
-
#!/usr/bin/perlで書きだしたCG...
-
perl の open について教えてく...
-
INDIRECT 横に再度抽出したい
-
アルファベットに付いて質問し...
-
openした後、closeしないでプロ...
-
画像が表示でnull; this.src
-
VBA変数をFunction.VLookupの戻...
-
perlのflock関数でロックをかけ...
-
Perl の外部モジュールの利用方法
-
TeraPadエディターの操作方法に...
-
bashスクリプト
-
perlの構文でカンマの意味が分...
おすすめ情報