@@ -1975,6 +1975,9 @@ msgid ""
1975
1975
" ``word`` have a word boundary on either side. This takes the job beyond "
1976
1976
":meth:`!replace`'s abilities.)"
1977
1977
msgstr ""
1978
+ "一つの例としては、単一の固定文字列を別の固定文字列に置き換える作業があるでしょう; 例えば ``word`` を ``deed`` で置換したい場合です。\n"
1979
+ ":func:`re.sub` はこの目的で使う関数のように思えますが、 :meth:`~str.replace` メソッドを利用することを考えた方がいいでしょう。\n"
1980
+ ":meth:`!replace` は単語内の ``word`` も置換し、 ``swordfish`` を ``sdeedfish`` に変えますが、安直な正規表現 ``word`` も同様に動作することに注意して下さい。(単語の一部に対する置換の実行を避けるには、パターンを ``\\ bword\\ b`` として、 ``word`` の両側に単語の境界が要求されるようにします。これは :meth:`!replace` の能力を越えた作業です。)"
1978
1981
1979
1982
#: ../../howto/regex.rst:1251
1980
1983
msgid ""
@@ -1984,6 +1987,9 @@ msgid ""
1984
1987
" capable of doing both tasks and will be faster than any regular expression "
1985
1988
"operation can be."
1986
1989
msgstr ""
1990
+ "別のよくある作業は、文字列の中に出現する文字を全て削除することと、別の文字で置換することです。この作業を ``re.sub('\\ n', ' ', "
1991
+ "S)`` のようにして行うかもしれませんが、 :meth:`~str.translate` "
1992
+ "は削除と置換の両方の作業をこなし、正規表現操作よりも高速に行うことができます。"
1987
1993
1988
1994
#: ../../howto/regex.rst:1257
1989
1995
msgid ""
@@ -2004,12 +2010,15 @@ msgid ""
2004
2010
"start at 0; if the match wouldn't start at zero, :func:`!match` will *not* "
2005
2011
"report it. ::"
2006
2012
msgstr ""
2013
+ ":func:`~re.match` 関数は文字列の先頭に正規表現がマッチするかどうか調べるだけですが、その一方 :func:`~re.search` はマッチするために文字列の先の方まで走査します。\n"
2014
+ "この違いを覚えておくことは重要なことです。\n"
2015
+ ":func:`!match` は開始位置0でマッチが成功したときのみ報告する; もし開始位置0でマッチしなければ、 :func:`!match` はそれを報告 *しない* 、ということを覚えておいてください。 ::"
2007
2016
2008
2017
#: ../../howto/regex.rst:1275
2009
2018
msgid ""
2010
2019
"On the other hand, :func:`~re.search` will scan forward through the string, "
2011
2020
"reporting the first match it finds. ::"
2012
- msgstr ""
2021
+ msgstr "一方 :func:`~re.search` は文字列の先の方まで走査し、最初にみつけたマッチを報告します。:: "
2013
2022
2014
2023
#: ../../howto/regex.rst:1283
2015
2024
msgid ""
@@ -2066,6 +2075,9 @@ msgid ""
2066
2075
"The final match extends from the ``'<'`` in ``'<html>'`` to the ``'>'`` in "
2067
2076
"``'</title>'``, which isn't what you want."
2068
2077
msgstr ""
2078
+ "正規表現は ``'<html>'`` 内の ``'<'`` にマッチし、 ``.*`` は残りの文字列の全てにマッチします。\n"
2079
+ "しかし、正規表現には依然として残っている部分があって、 ``>`` は文字列の終端にマッチしないので、正規表現エンジンは一文字ずつ ``>`` とマッチするまで引き返すことになります。\n"
2080
+ "最終的にマッチする領域は ``'<html>'`` の ``'<'`` から ``'</title>'`` の ``'>'`` まで広がりますが、これは望んだ結果ではありません。"
2069
2081
2070
2082
#: ../../howto/regex.rst:1321
2071
2083
msgid ""
@@ -2112,6 +2124,8 @@ msgid ""
2112
2124
"regular expression can be helpful, because it allows you to format the "
2113
2125
"regular expression more clearly."
2114
2126
msgstr ""
2127
+ "そのような正規表現に対しては、正規表現をコンパイルする時に :const:`re.VERBOSE` "
2128
+ "フラグを指定することが助けになります。なぜなら、より明確な書式で正規表現を書けるからです。"
2115
2129
2116
2130
#: ../../howto/regex.rst:1349
2117
2131
msgid ""
@@ -2155,3 +2169,8 @@ msgid ""
2155
2169
"edition covered Python's now-removed :mod:`!regex` module, which won't help "
2156
2170
"you much.) Consider checking it out from your library."
2157
2171
msgstr ""
2172
+ "O'Reilly から出版されている Jeffrey Friedl の Mastering Regular Expressions "
2173
+ "は正規表現に関するほぼ完璧な書籍です (訳注 日本語訳「詳説 正規表現」が出版されています) 。不幸なことに、この本は Perl と Java "
2174
+ "の正規表現を集中して扱っていて、 Python の正規表現については全く扱っていません、そのため Python "
2175
+ "プログラミングのためのレファレンスとして使うことはできません。 (第一版はいまや削除された Python の :mod:`!regex` "
2176
+ "モジュールについて扱っていましたが、これはあまり役に立たないでしょう。) 図書館で調べるのを検討してみましょう。"
0 commit comments