argra****@users*****
argra****@users*****
2011年 5月 7日 (土) 04:15:22 JST
Index: docs/perl/5.10.1/perlintro.pod diff -u docs/perl/5.10.1/perlintro.pod:1.3 docs/perl/5.10.1/perlintro.pod:1.4 --- docs/perl/5.10.1/perlintro.pod:1.3 Sun May 1 04:17:48 2011 +++ docs/perl/5.10.1/perlintro.pod Sat May 7 04:15:22 2011 @@ -380,8 +380,7 @@ =end original -Scalar values can be used in various ways: -(TBT) +スカラ値は色々な方法で利用できます: print $animal; print "The animal is $animal\n"; @@ -400,10 +399,11 @@ There are a number of "magic" scalars with names that look like punctuation or line noise. These special variables are used for all -kinds of purposes, and are documented in L<perlvar>. The only one you -need to know about for now is C<$_> which is the "default variable". -It's used as the default argument to a number of functions in Perl, and -it's set implicitly by certain looping constructs. +kinds of purposes, and are documented in L<perlvar>. +今のところ知っておくべきただ一つのことは、「デフォルト変数」である +C<$_> です。 +これは Perl の多くの関数でデフォルト引数として使われ、ある種のループ構造で +暗黙に設定されます。 (TBT) print; # prints contents of $_ by default @@ -430,8 +430,8 @@ =end original -Arrays are zero-indexed. Here's how you get at elements in an array: -(TBT) +配列は添え字 0 から始まります。 +以下は配列の要素を取得する方法です: print $animals[0]; # prints "camel" print $animals[1]; # prints "llama" @@ -443,9 +443,7 @@ =end original -The special variable C<$#array> tells you the index of the last element -of an array: -(TBT) +特殊変数 C<$#array> は、配列の最後の要素の添え字を返します: print $mixed[$#mixed]; # last element, prints 1.23 @@ -458,11 +456,10 @@ =end original -You might be tempted to use C<$#array + 1> to tell you how many items there -are in an array. Don't bother. As it happens, using C<@array> where Perl -expects to find a scalar value ("in scalar context") will give you the number -of elements in the array: -(TBT) +配列にある要素の数を知るのに C<$#array + 1> を使いたくなるかも知れません。 +心配はいりません。 +偶然にも、Perl がスカラ値を想定しているところ(「スカラコンテキスト」)で +C<@array> を使うと、配列の要素の数を返します: if (@animals < 5) { ... } @@ -474,10 +471,8 @@ =end original -The elements we're getting from the array start with a C<$> because -we're getting just a single value out of the array -- you ask for a scalar, -you get a scalar. -(TBT) +配列から一つの値を取り出したいだけなので、配列の要素は C<$> で始まります -- +スカラを得ようとすれば、スカラを得ます。 =begin original @@ -487,10 +482,18 @@ 配列から複数の値を得るには: +=begin original + @animals[0,1]; # gives ("camel", "llama"); @animals[0..2]; # gives ("camel", "llama", "owl"); @animals[1..$#animals]; # gives all except the first element +=end original + + @animals[0,1]; # ("camel", "llama") を返す + @animals[0..2]; # ("camel", "llama", "owl") を返す + @animals[1..$#animals]; # 最初の要素以外全てを返す + =begin original This is called an "array slice". @@ -518,10 +521,9 @@ =end original -There are a couple of special arrays too, such as C<@ARGV> (the command -line arguments to your script) and C<@_> (the arguments passed to a -subroutine). These are documented in L<perlvar>. -(TBT) +C<@ARGV> (スクリプトのコマンドライン引数) や C<@_> (サブルーチンに渡された +引数) のように、色々な特殊配列もあります。 +これらは L<perlvar> に文書化されています。 =item Hashes @@ -559,8 +561,14 @@ ハッシュの要素を得るには: +=begin original + $fruit_color{"apple"}; # gives "red" +=end original + + $fruit_color{"apple"}; # "red" を返す + =begin original You can get at lists of keys and values with C<keys()> and @@ -841,8 +849,14 @@ C<while> を後置条件にも使えます: +=begin original + print "LA LA LA\n" while 1; # loops forever +=end original + + print "LA LA LA\n" while 1; # 無限ループ + =item for =begin original @@ -875,11 +889,20 @@ print $list[$_] foreach 0 .. $max; +=begin original + # you don't have to use the default $_ either... foreach my $key (keys %hash) { print "The value of $key is $hash{$key}\n"; } +=end original + + # デフォルトの $_ を使う必要はありません… + foreach my $key (keys %hash) { + print "The value of $key is $hash{$key}\n"; + } + =back =begin original @@ -1049,10 +1072,18 @@ 多くの演算子は、以下のように C<=> と組み合わせることができます: +=begin original + $a += 1; # same as $a = $a + 1 $a -= 1; # same as $a = $a - 1 $a .= "\n"; # same as $a = $a . "\n"; +=end original + + $a += 1; # $a = $a + 1 と同じ + $a -= 1; # $a = $a - 1 と同じ + $a .= "\n"; # $a = $a . "\n"; と同じ + =head2 Files and I/O (ファイルと I/O) @@ -1165,9 +1196,16 @@ (単純なマッチング) +=begin original + if (/foo/) { ... } # true if $_ contains "foo" if ($a =~ /foo/) { ... } # true if $a contains "foo" +=end original + + if (/foo/) { ... } # $_ に "foo" が含まれていれば真 + if ($a =~ /foo/) { ... } # $a に "foo" が含まれていれば真 + =begin original The C<//> matching operator is documented in L<perlop>. It operates on @@ -1183,10 +1221,18 @@ =item Simple substitution +=begin original + s/foo/bar/; # replaces foo with bar in $_ $a =~ s/foo/bar/; # replaces foo with bar in $a $a =~ s/foo/bar/g; # replaces ALL INSTANCES of foo with bar in $a +=end original + + s/foo/bar/; # $_ にある foo を bar に置き換える + $a =~ s/foo/bar/; # $a にある foo を bar に置き換える + $a =~ s/foo/bar/g; # $a にある全ての foo を bar に置き換える + =begin original The C<s///> substitution operator is documented in L<perlop>. @@ -1214,6 +1260,8 @@ the meantime, here's a quick cheat sheet: (TBT) +=begin original + . a single character \s a whitespace character (space, tab, newline, ...) \S non-whitespace character @@ -1225,9 +1273,29 @@ [^aeiou] matches a single character outside the given set (foo|bar|baz) matches any of the alternatives specified +=end original + + . 単一の文字 + \s 空白文字(空白、タブ、改行…) + \S 非空白文字 + \d 数字 (0-9) + \D 非数字 + \w 単語文字 (a-z, A-Z, 0-9, _) + \W 非単語文字 + [aeiou] 指定された集合に含まれる単一の文字 + [^aeiou] 指定された集合に含まれない単一の文字 + (foo|bar|baz) 指定された代替のいずれかにマッチング + +=begin original + ^ start of string $ end of string +=end original + + ^ 文字列の先頭 + $ 文字列の末尾 + =begin original Quantifiers can be used to specify how many of the previous thing you @@ -1243,6 +1311,8 @@ metacharacters in parentheses. (TBT) +=begin original + * zero or more of the previous thing + one or more of the previous thing ? zero or one of the previous thing @@ -1250,6 +1320,15 @@ {3,6} matches between 3 and 6 of the previous thing {3,} matches 3 or more of the previous thing +=end original + + * 手前にあるものに 0 回以上マッチング + + 手前にあるものに 1 回以上マッチング + ? 手前にあるものに 1 回または 0 回マッチング + {3} 手前にあるものにちょうど 3 回マッチング + {3,6} 手前にあるものに 3 回から 6 回マッチング + {3,} 手前にあるものに 3 回以上マッチング + =begin original Some brief examples: @@ -1258,6 +1337,8 @@ いくつかの簡単な例です: +=begin original + /^\d+/ string starts with one or more digits /^$/ nothing in the string (start and end are adjacent) /(\d\s){3}/ a three digits, each followed by a whitespace @@ -1265,15 +1346,34 @@ /(a.)+/ matches a string in which every odd-numbered letter is a (eg "abacadaf") +=end original + + /^\d+/ 一つ以上の数字で始まる + /^$/ 空文字列 (先頭と末尾が隣接している) + /(\d\s){3}/ 3 桁の数字(それぞれに空白文字が引き続く) + (例えば "3 4 5 ") + /(a.)+/ 奇数番目が全て a である文字列 + (例えば "abacadaf") + +=begin original + # This loop reads from STDIN, and prints non-blank lines: while (<>) { next if /^$/; print; } +=end original + + # このループは STDIN から読み込み、非空行を表示する: + while (<>) { + next if /^$/; + print; + } + =item Parentheses for capturing -(かっことキャプチャ) +(かっこと捕捉) =begin original @@ -1283,10 +1383,9 @@ =end original -As well as grouping, parentheses serve a second purpose. They can be -used to capture the results of parts of the regexp match for later use. -The results end up in C<$1>, C<$2> and so on. -(TBT) +かっこは、グループ化だけではなく第二の目的の役目を果たします。 +正規表現マッチングの一部の結果を後で使うために捕捉するために使えます。 +結果は C<$1>, C<$2> などに入ります。 # a cheap and nasty way to break an email address up into parts @@ -1307,10 +1406,9 @@ =end original -Perl regexps also support backreferences, lookaheads, and all kinds of -other complex details. Read all about them in L<perlrequick>, -L<perlretut>, and L<perlre>. -(TBT) +Perl の正規表現は、後方参照、前方参照およびその他のあらゆる種類の複雑な +詳細に対応しています。 +L<perlrequick>, L<perlretut>, L<perlre> でこれらに関する全てを読んでください。 =back @@ -1416,11 +1514,10 @@ =end original -OO Perl は比較的単純で、is implemented using references which -know what sort of object they are based on Perl's concept of packages. +OO Perl は比較的単純で、オブジェクトが Perl の概念であるパッケージの +どれに基づいているかを知っているリファレンスを使って実装されています。 しかし、OO Perl はこの文書の範囲からは大きく外れます。 L<perlboot>, L<perltoot>, L<perltooc>, L<perlobj> を読んでください。 -(TBT) =begin original Index: docs/perl/5.10.1/perlmodstyle.pod diff -u docs/perl/5.10.1/perlmodstyle.pod:1.3 docs/perl/5.10.1/perlmodstyle.pod:1.4 --- docs/perl/5.10.1/perlmodstyle.pod:1.3 Sun May 1 04:17:48 2011 +++ docs/perl/5.10.1/perlmodstyle.pod Sat May 7 04:15:22 2011 @@ -103,9 +103,8 @@ このドキュメントの最初のセクションでは項目別のチェックリストを 提供します; その後のセクションではリストの各項目について より詳しい説明を行います。 -そして最後のセクション、「よくある落とし穴」で -CPAN 作者がよくやってしまう特にメジャーな失敗をいくつか -説明します。 +そして最後のセクション、「よくある落とし穴」で CPAN 作者が +よくやってしまう、特にメジャーな失敗をいくつか説明します。 =head1 QUICK CHECKLIST @@ -134,7 +133,7 @@ =end original -車輪の再発明をするな +車輪の再発明をしない =item * @@ -145,7 +144,7 @@ =end original 可能であるのなら既存のモジュールにパッチ、拡張、 -サブクラス化を行え +サブクラス化を行う =item * @@ -165,7 +164,7 @@ =end original -ふさわしい名前を選べ +ふさわしい名前を選ぶ =back @@ -183,7 +182,7 @@ =end original -API は平均的なプログラマが理解できるようにするべきである +API は平均的なプログラマが理解できるようにするべき =item * @@ -203,7 +202,7 @@ =end original -機能を出力から分離せよ +機能を出力から分離する =item * @@ -213,7 +212,7 @@ =end original -関数やメソッドには一貫性のある名前を付けよ +関数やメソッドには一貫性のある名前を付ける =item * @@ -225,7 +224,7 @@ =end original 二つ以上の引数ををとるのなら -名前付きの引数(ハッシュまたはハッシュリファレンス)を使え +名前付きの引数(ハッシュまたはハッシュリファレンス)を使う =back @@ -244,7 +243,7 @@ =end original C<use strict> 及び C<-w> の環境下で動作することを -保証しろ +保証する =item * @@ -254,7 +253,7 @@ =end original -安定したモジュールは後方互換を維持するべきである +安定したモジュールは後方互換性を維持するべき =back @@ -272,7 +271,7 @@ =end original -ドキュメントを POD 形式で書け +文書を POD 形式で書く =item * @@ -282,8 +281,7 @@ =end original - -目的、範囲、及び対象となるアプリケーションを記述せよ +目的、範囲、及び対象となるアプリケーションを記述する =item * @@ -294,7 +292,7 @@ =end original 個々の公開されているアクセスメソッドまたは関数を、 -パラメータ及び復帰値も含めて記述せよ +パラメータ及び返り値も含めて記述する =item * @@ -304,7 +302,7 @@ =end original -ドキュメントに使い方を例示せよ +文書に使い方を例示する =item * @@ -314,8 +312,7 @@ =end original -README ファイルを提供せよ; またリリースノート、 -更新履歴もできれば. +README ファイルを提供する; またできればリリースノート、更新履歴も =item * @@ -325,7 +322,7 @@ =end original -より詳細な情報へのリンク(URL, email)を提供せよ +さらなる情報へのリンク(URL, email)を提供する =back @@ -343,7 +340,7 @@ =end original -Makefile.PL または Build.PL に依存(pre-requisites)を記述せよ +Makefile.PL または Build.PL に依存(pre-requisites)を記述する =item * @@ -353,7 +350,7 @@ =end original -動作に必要な Perl のバージョンを C<use> で記述せよ +動作に必要な Perl のバージョンを C<use> で記述する =item * @@ -363,7 +360,7 @@ =end original -モジュールにはテストを含めよ +モジュールにはテストを含める =item * @@ -373,7 +370,7 @@ =end original -バージョン番号の採番には一般的で矛盾の起きない形式を選べ +バージョン番号の採番には一般的で矛盾の起きない形式を選ぶ (Perl モジュールでは一般的に X.YY が使われている) =item * @@ -384,7 +381,7 @@ =end original -たとえそれがどんなに小さな変更であっても、変更毎にバージョン番号を増やせ +たとえそれがどんなに小さな変更であっても、変更毎にバージョン番号を増やす =item * @@ -394,7 +391,7 @@ =end original -モジュールのパッケージングには "make dist" を使え +モジュールのパッケージングには "make dist" を使う =item * @@ -404,7 +401,7 @@ =end original -適切なライセンスを選べ (GPL/Artistic はよいデフォルトです) +適切なライセンスを選ぶ (GPL/Artistic はよいデフォルトです) =back Index: docs/perl/5.10.1/perlre.pod diff -u docs/perl/5.10.1/perlre.pod:1.3 docs/perl/5.10.1/perlre.pod:1.4 --- docs/perl/5.10.1/perlre.pod:1.3 Sun May 1 04:17:48 2011 +++ docs/perl/5.10.1/perlre.pod Sat May 7 04:15:22 2011 @@ -98,7 +98,7 @@ =end original 文字列を 1 行として扱います。 -つまり、"." は任意の1文字、通常はマッチングしない改行でさえも +つまり、"." は任意の 1 文字、通常はマッチングしない改行でさえも マッチングするように変更されます。 =begin original @@ -173,9 +173,9 @@ =end original -グローバル(Global)なマッチング、及びマッチング失敗後の現在位置(Current position) -の保持。 -i, m, s, x とは違い、この2つのフラグは +グローバル(Global)なマッチング、及びマッチング失敗後の +現在位置の保持。 +i, m, s, x とは違い、この二つのフラグは 正規表現そのものではなく正規表現の使われ方に作用します。 g 及び c 修飾子の詳細な説明は L<perlretut/Using regular expressions in Perl> を参照してください。 @@ -191,7 +191,7 @@ =end original -これらは通常 "C</x> 修飾子" のように記述され、これは区切りがスラッシュで +これらは通常「C</x> 修飾子」のように記述され、これは区切りがスラッシュで なくてもそう記述されます。 また、これらはいずれも C<(?...)> 構築子を使って正規表現内に 埋め込まれることもあります。 @@ -223,7 +223,7 @@ これを使うことで正規表現を(若干)より読みやすいパーツに分解できます。 そして C<#> 文字は通常の Perl コードのようにコメントを始めるメタ文字として 扱われるようになります。 -これはパターンの中(それもC</x>の影響を受けない文字クラスの外)で実際に +これはパターンの中(それも C</x> の影響を受けない文字クラスの外)で実際に 空白や C<#> 文字を必要とするときには、エスケープするか 8 進数もしくは 16 進数エスケープ(バックスラッシュもしくは C<\Q...\E>)を しなければなりません。 @@ -380,13 +380,13 @@ =end original -(これ以外のコンテキストで波かっこが使われたときには -普通の文字として使われます。 +(これ以外のコンテキストで波かっこが使われたときには普通の文字として +使われます。 また、下限は省略可能ではありません。) "*" 量指定子は C<{0,}> と、"+" 量指定子は C<{1,}> と、 "?" 量指定子は C<{0,1}> と等価です。 -n 及び m は -perl をビルドしたときに定義した既定の制限より小さな整数回に制限されます。 +n 及び m は perl をビルドしたときに定義した既定の制限より小さな整数回に +制限されます。 これは大抵のプラットフォームでは 32766 回になっています。 実際の制限は次のようなコードを実行すると生成されるエラーメッセージで 見ることができます: @@ -410,7 +410,7 @@ (始めた地点から)可能な限り多くを先にあるパターンでマッチングさせます。 もし最小回数でのマッチングを行いたいのであれば、量指定子の後ろに "?" を続けます。 -意味は変更されずに"貪欲さ"だけを変更できます: +意味は変更されずに「貪欲さ」だけを変更できます: X<metacharacter> X<greedy> X<greediness> X<?> X<*?> X<+?> X<??> X<{n}?> X<{n,}?> X<{n,m}?> @@ -444,7 +444,7 @@ デフォルトでは、パターンのうちの量指定された一部によってパターン全体が マッチングに失敗したとき、Perl はバックトラックを行います。 しかしこの振る舞いは望まれないこともあります。 -そのため、Perl は"絶対最大量(possessive)"量指定形式も提供しています。 +そのため、Perl は「絶対最大量(possessive)」量指定形式も提供しています。 =begin original @@ -805,7 +805,7 @@ =end original -C<[ \t]> と等価な GNU 拡張、"全ての水平空白"。 +C<[ \t]> と等価な GNU 拡張、「全ての水平空白」。 =item [2] @@ -816,7 +816,7 @@ =end original -C<[[:space:]]> には(とても稀な)"垂直タブ", "\cK" または +C<[[:space:]]> には(とても稀な)「垂直タブ」, "\cK" または ASCII での chr(11) が含まれるため C<\s> と完全な等価ではありません。 =item [3] @@ -827,7 +827,7 @@ =end original -Perl 拡張、既出。 +Perl 拡張、上述の通り。 =back @@ -1197,7 +1197,7 @@ C<\G> アサーションはグローバルなマッチング(C<m//g>)を連結するために 使います; これは L<perlop/Regexp Quote-Like Operators> にも説明されています。 これは文字列に対していくつかのパターンを次々にマッチングさせたいといった、 -C<lex> 風なスキャナを書きたいときにも便利です; 同じリファレンスを +C<lex> 風のスキャナを書きたいときにも便利です; 同じリファレンスを 参照してください。 C<\G> が実際にマッチングできる位置は C<pos()> を左辺値として 使うことで変更できます: L<perlfunc/pos> を参照してください。 @@ -1284,7 +1284,7 @@ しかし Perl は \10, \11 などを \010, \011 などの別名として使います。 (0 は 8 進数を意味することを思い出してください; つまり \011 はあなたの コーディングしている文字集合での番号 9 にあたる文字になります; -これは10番目の文字であり、ASCII においては水平タブになります。) +これは 10 番目の文字であり、ASCII においては水平タブになります。) Perl はこれを両方の意味で解釈し、少なくとも 10 の左かっこが使われていれば \10 を後方参照として解釈します。 同じように 11 の左かっこがあれば \11 を後方参照として解釈します。 @@ -1439,11 +1439,10 @@ =end original -数値によるマッチング変数($1, $2, $3, etc.)及び -関連する記号変数(C<$+>, C<$&>, C<$'>, C<$^N>)はすべて -ブロックの終端または次のマッチング成功までのどちらか先に -満たした方の、動的なスコープを持ちます。 -(L<perlsyn/Compound Statements> 参照。) +数値によるマッチング変数($1, $2, $3 など)及び関連する記号変数 +(C<$+>, C<$&>, C<$'>, C<$^N>)はすべてブロックの終端または次のマッチング +成功までのどちらか先に満たした方の、動的なスコープを持ちます。 +(L<perlsyn/Compound Statements> を参照してしてください。) X<$+> X<$^N> X<$&> X<$`> X<$'> X<$1> X<$2> X<$3> X<$4> X<$5> X<$6> X<$7> X<$8> X<$9> @@ -1699,7 +1698,7 @@ =end original は C<blah> に大文字小文字の区別なくマッチングし、 -いくつかの空白、そして前の単語その物(I<大文字小文字の区別まで含めて!>)に +いくつかの空白、そして前の単語その物(I<大文字小文字の区別まで含めて>!)に 再度マッチングします; ここではこのグループの外側で C</x> 修飾子を持ち、 C</i> 修飾子を持たないものとします。 @@ -1789,8 +1788,7 @@ =end original これは各代替分岐において捕捉バッファを同じ番号から始める特殊な -属性を持っている、 -"ブランチリセット(branch reset)" パターンです。 +属性を持っている、「ブランチリセット(branch reset)」パターンです。 これは perl 5.10.0 から提供されています。 =begin original @@ -2376,8 +2374,8 @@ =end original -B<警告>: この拡張正規表現の機能は実験的なものと考えてください; -また追う通知なしに変更されるかもしれません。 +B<警告>: この拡張正規表現の機能は実験的なものと考えられており、 +また通知なしに変更されるかもしれません。 副作用を持つコードの実行は今後の正規表現エンジンの最適化の影響で バージョン間で必ずしも同じになるとは限らないでしょう。 @@ -2411,7 +2409,7 @@ =end original -これはマッチング B<します>が、$1 は設定され B<ません>。 +これはマッチング B<します >が、$1 は設定 B<されません>。 =begin original @@ -2459,9 +2457,9 @@ =end original -Perl の正規表現エンジンは今のところリエントラントではないので、 -遅延されたコードからは C<m//> または C<s///> を使って直接 -的にでも C<split> のような関数を使って間接的にでも呼び出さないでください。 +Perl の正規表現エンジンは今のところ再入可能ではないので、 +遅延されたコードからは C<m//> または C<s///> を使って直接的にでも +C<split> のような関数を使って間接的にでも呼び出さないでください。 =begin original @@ -2706,8 +2704,7 @@ =end original -その番号の捕捉バッファが何かにマッチングしたかどうかを -調べます。 +その番号の捕捉バッファが何かにマッチングしたかどうかを調べます。 =item (<NAME>) ('NAME') @@ -2749,7 +2746,7 @@ =end original 式がその n 番目の捕捉グループのすぐ内側で実行されているかどうかを調べます。 -これは次のものと等価な正規表現です, +これは次のものと等価な正規表現です if ((caller(0))[3] eq 'subname') { ... } @@ -2772,11 +2769,11 @@ =end original -C<(R1)> と似ていて、この述語はその名前のつけられている -一番左のグループのすぐ内側で実行されているかどうかをしらべます( -一番左は C<(?NAME)> と同じロジックです)。 -これは完全なスタックを調べずに、一番内部のアクティブな最近名前を -見ます。 +C<(R1)> と似ていて、この述語はその名前のつけられている一番左のグループの +すぐ内側で実行されているかどうかをしらべます(一番左は C<(?NAME)> と +同じロジックです)。 +これは完全なスタックを調べずに、一番内部のアクティブな再帰の名前だけを +調べます。 =item (DEFINE) @@ -2879,7 +2876,7 @@ =end original 再帰の内側でマッチングした捕捉バッファは再帰から戻った後には -アクセスできないため。捕捉バッファのこの 1 段増えた +アクセスできないため、余分な捕捉バッファの レイヤは必要な点に注意してください。 従って C<$+{NAME}> が定義されていても C<$+{NAME_PAT}> は定義されません。 @@ -3014,14 +3011,13 @@ =end original これは上で行っているように C<< (?>...) >> マッチングを -使っています(これは自身で確認してみるとよいでしょう)、 -しかし 1000000 個の C<a> からなる似た文字列を使ってみると、 -4分の1の時間で完了します。 -しかしながら、このパターンは -現在のところ C<use warnings> プラグマまたは B<-w> スイッチ -の影響下では C<"正規表現において空文字列に何回もマッチング -しました (matches null string many times in regex)"> -という警告を発するでしょう。 +使っています(これは自身で確認してみるとよいでしょう)が、 +しかし 1000000 個の C<a> からなる似た文字列を使ってみると、4 分の 1 の +時間で完了します。 +しかしながら、このパターンは現在のところ C<use warnings> プラグマまたは +B<-w> スイッチの影響下では C<"matches null string many times in regex"> +(正規表現において空文字列に何回もマッチングしました) という警告を +発するでしょう。 =begin original @@ -3090,7 +3086,7 @@ =end original いくつかの書籍においてこの構成子は「アトミックなマッチング」 -または"強欲なマッチング(possessive matching)"と呼ばれます。 +または「強欲なマッチング(possessive matching)」と呼ばれます。 =begin original @@ -3214,6 +3210,8 @@ =item Verbs that take an argument +(引数を取る動詞) + =over 4 =item C<(*PRUNE)> C<(*PRUNE:NAME)> @@ -4416,7 +4414,7 @@ =end original -B<警告>: この先には難しい(そして無味乾燥な)物体があります。 +B<警告>: この先には難しい(そして無味乾燥な)内容があります。 このセクションは書き直す必要があるでしょう。 =begin original @@ -4953,7 +4951,7 @@ Perl 5.10.0 時点では Perl は幾つかの Python/PCRE 的な正規表現構文拡張を サポートします。 -Perl プログラマはこれらの Perl としての構文を推奨しますが、以下の物も +Perl プログラマはこれらの Perl としての構文を推奨しますが、以下のものも 受理されます: =over 4 @@ -5042,9 +5040,8 @@ =end original -I<Mastering Regular Expressions> by Jeffrey Friedl, published -by O'Reilly and Associates. -(TBT) +O'Reilly and Associates から出版されている、Jeffrey Friedl による +I<Mastering Regular Expressions> (詳説 正規表現) =begin meta