@@ -774,6 +774,11 @@ msgid ""
774
774
"means the sequences will be invalid if raw string notation or escaping the "
775
775
"backslashes isn't used."
776
776
msgstr ""
777
+ "それに加えて、正規表現では有効であるものの Python の文字列リテラルとしては有"
778
+ "効でない特殊文字のエスケープシーケンスは、現在では :exc:`DeprecationWarning` "
779
+ "を引き起こし、最終的には :exc:`SyntaxError` となります。すなわち、そのような"
780
+ "シーケンスは raw string 記法を使うか、バックスラッシュによるエスケープを使わ"
781
+ "ないかぎり無効になることを意味します。"
777
782
778
783
#: ../../howto/regex.rst:341
779
784
msgid "Regular String"
@@ -1020,6 +1025,11 @@ msgid ""
1020
1025
"in a :exc:`DeprecationWarning` and will eventually become a :exc:"
1021
1026
"`SyntaxError`. See :ref:`the-backslash-plague`."
1022
1027
msgstr ""
1028
+ "この例では、文字列リテラルを raw string リテラルにするプレフィックス ``r`` が"
1029
+ "必要です。これは、正規表現とは異なり、通常の\" 調理済み\" 文字列リテラルにお"
1030
+ "けるエスケープシーケンスは Python では認識されないためであり、現在では :exc:"
1031
+ "`DeprecationWarning` を引き起こし、最終的には :exc:`SyntaxError` となります。"
1032
+ "詳しくは :ref:`the-backslash-plague` を参照してください。"
1023
1033
1024
1034
#: ../../howto/regex.rst:480
1025
1035
msgid ""
@@ -1028,6 +1038,10 @@ msgid ""
1028
1038
"sequence of :ref:`match object <match-objects>` instances as an :term:"
1029
1039
"`iterator`::"
1030
1040
msgstr ""
1041
+ ":meth:`~re.Pattern.findall` は結果を返す前に完全なリストを必ず生成してしまい"
1042
+ "ます。いっぽう :meth:`~re.Pattern.finditer` メソッドは :ref:`マッチオブジェク"
1043
+ "ト <match-objects>` インスタンスのシーケンスを :term:`iterator` として返しま"
1044
+ "す::"
1031
1045
1032
1046
#: ../../howto/regex.rst:496
1033
1047
msgid "Module-Level Functions"
@@ -1183,6 +1197,18 @@ msgid ""
1183
1197
"lowercasing doesn't take the current locale into account; it will if you "
1184
1198
"also set the :const:`LOCALE` flag."
1185
1199
msgstr ""
1200
+ "大文字と小文字を区別しないマッチングを実行します; 文字クラスと文字列リテラル"
1201
+ "は大文字か小文字かに関係なくパターンにマッチします。例えば、 ``[A-Z]`` は小文"
1202
+ "字のアルファベットにもマッチします。 :const:`ASCII` フラグによって非 ASCII 文"
1203
+ "字のマッチングが無効化されていなければ、完全なユニコードのマッチングも可能で"
1204
+ "す。ユニコードで ``[a-z]`` または ``[A-Z]`` が :const:`IGNORECASE` フラグとと"
1205
+ "もに使われると、 52個の ASCII 文字に加えて 次の4つの 非 ASCII 文字にマッチし"
1206
+ "ます: 'İ' (U+0130, ラテン語の大文字 I で、上部に点がついたもの), "
1207
+ "'ı' (U+0131, ラテン語の小文字 i で上部に点がない), 'ſ' (U+017F, ラテン語の小"
1208
+ "文字 s), 'K' (U+212A, ケルビン記号)。 ``Spam`` は ``'Spam'``, ``'spam'``, "
1209
+ "``'spAM'``, そして ``'ſpam'`` にマッチします (ただし最後の文字列はユニコード"
1210
+ "モードの場合のみマッチします)。この「小文字化」は現在のロケールを考慮しませ"
1211
+ "ん; ただし :const:`LOCALE` フラグをセットした場合はロケールを考慮します。"
1186
1212
1187
1213
#: ../../howto/regex.rst:580
1188
1214
msgid ""
@@ -1210,6 +1236,22 @@ msgid ""
1210
1236
"matching is already enabled by default in Python 3 for Unicode (str) "
1211
1237
"patterns, and it is able to handle different locales/languages."
1212
1238
msgstr ""
1239
+ "ロケールは言語の違いを考慮したプログラムを書くことを手助けすることを目的とし"
1240
+ "た C ライブラリの機能です。例えば、エンコードされたフランス語のテキストを処理"
1241
+ "していて、``\\ w+`` を使って単語のマッチを行いたいとします。ですがこの場合、 "
1242
+ "``\\ w`` はバイトパターンにおいて文字クラス ``[A-Za-z]`` だけにマッチします; "
1243
+ "すなわち ``é`` や ``ç`` に対応するバイト列にはマッチしません。もしシステムが"
1244
+ "適切に設定されていて、ロケールがフランス語に設定されていれば、ある C 関数はプ"
1245
+ "ログラムに ``é`` に対応するバイト列も文字として考慮するべきであると伝えます。"
1246
+ "正規表現をコンパイルするときに :const:`LOCALE` フラグを設定すると、コンパイル"
1247
+ "されたオブジェクトが ``\\ w`` に対してロケールを考慮する C 関数を使うようにな"
1248
+ "ります; これにより処理は遅くなりますが、 ``\\ w+`` を期待通りフランス語の単語"
1249
+ "にマッチさせることが可能になります。このフラグを Python 3 で利用することは推"
1250
+ "奨されません。なぜならロケールの仕組みは非常に信頼性が低く、同時にひとつの "
1251
+ "\" 文化\" しか扱うことができず、また8ビットのロケールでしか正しく動作しないか"
1252
+ "らです。Python 3 ではユニコード (文字列の) パターンに対してユニコードのマッチ"
1253
+ "ングがデフォルトで有効化されており、これにより異なるロケールまたは言語を同時"
1254
+ "に扱うことができます。 "
1213
1255
1214
1256
#: ../../howto/regex.rst:605
1215
1257
msgid ""
@@ -1350,6 +1392,12 @@ msgid ""
1350
1392
"``'Crow'`` or ``'Servo'``, not ``'Cro'``, a ``'w'`` or an ``'S'``, and "
1351
1393
"``'ervo'``."
1352
1394
msgstr ""
1395
+ "代替 (alternation) または\" or\" 演算子です。 *A* と *B* が正規表現の場合、 "
1396
+ "``A|B`` は *A* と *B* のどちらかにマッチするような文字列にマッチします。複数"
1397
+ "の文字からなる文字列による代替処理が適切に動作するために、 ``|`` の優先度は非"
1398
+ "常に低く設定されています。 ``Crow|Servo`` は ``'Crow'`` か ``'Servo'`` のどち"
1399
+ "らかにマッチするパターンであり、 「``'Cro'`` に続いて ``'w'`` または ``'S'`` "
1400
+ "があり、さらに ``'ervo'`` が続く」という意味ではありません。"
1353
1401
1354
1402
#: ../../howto/regex.rst:702
1355
1403
msgid ""
@@ -1748,6 +1796,8 @@ msgid ""
1748
1796
"Additionally, you can retrieve named groups as a dictionary with :meth:`~re."
1749
1797
"Match.groupdict`::"
1750
1798
msgstr ""
1799
+ "さらに、名前付きのグループを :meth:`~re.Match.groupdict` を使って辞書として取"
1800
+ "り出すこともできます::"
1751
1801
1752
1802
#: ../../howto/regex.rst:952
1753
1803
msgid ""