|
パターンマッチ
2002/07/12 作成 ----------- Perlには「パターンマッチ」という非常に便利な文字列操作機能がついています。 文字列の中から特定の文字列があるかどうかを調べたり置換したりする事が簡単に出来たりします。
パターンが一致した式は真を、一致したものがなければ偽を返します。
$str = "マッチでぇ〜す";
みたいに使います。if($str =~/マッチ/){ print "マッチでした"; } else{ print "マッチじゃありませんでした"; } 次に置換ですが。マッチした文字列を指定した文字列に置き換えます。
$str = "マッチでぇ〜す";
こうすると$str内の「マッチ」という文字列が「マッチョ」に置き換えられ、結果として$str1の内容は「マッチョでぇ〜す」となります。$str =~s/マッチ/マッチョ/; 式の戻り値は置き換えた回数となり、一つもマッチしなければ偽を返します。 そして最後に変換。
$str = "ABCDefgh";
こうすると$str内の全ての小文字を大文字に変換する事ができます。$str =~tr/a-z/A-Z/; |
|---|
|
パターン結合演算子
2002/07/12 作成 ----------- 『=~』の事です パターンマッチ演算子と対象文字列を結ぶ働きをします。 この結合演算子が無い場合の対象文字列は「$_」になります。(「$_」とは引数等が省略された時にデフォルトで使われる隠れ変数のような物と考えておいてください…) |
|---|
|
マッチ演算子のオプション
2002/7/12(金 ----------- パターンマッチにはいくつかのオプション機能があり、これによって更に高度な文字列操作が可能になります。
オプションは
$str =~/マッチ/g;
のように式の最後に追加する形で使います。オプションの効果は表に書いてある通りですが…一応gオプションだけ例を挙げてみます。
$str = "マッチのパターンマッチ";
$strの中に「マッチ」が見つからなくなるまでループし、何個のパターンがマッチしたかを表示します。while($str =~ m/マッチ/g;){ $a++; } print $a; |
|---|
|
パターン結合演算子
2002/07/12 作成 ----------- 『=~』の事です パターンマッチ演算子と対象文字列を結ぶ働きをします。 この結合演算子が無い場合の対象文字列は「$_」になります。(「$_」とは引数等が省略された時にデフォルトで使われる隠れ変数のような物と考えておいてください…) |
|---|
|
置換のオプション
2002/07/12 作成 ----------- パターンマッチにはいくつかのオプション機能があり、これによって更に高度な文字列操作が可能になります。
オプションは
$str =~/マッチ/g;
のように式の最後に追加する形で使います。オプションの効果は表に書いてある通りですが…一応gオプションだけ例を挙げてみます。
$str = "マッチのパターンマッチ";
$strの中に「マッチ」が見つからなくなるまでループし、何個のパターンがマッチしたかを表示します。while($str =~ m/マッチ/g;){ $a++; } print $a; |
|---|