From 6432f1901538773e658b04c2e0f3488fc512caa1 Mon Sep 17 00:00:00 2001 From: Leo Wang Date: Tue, 5 Sep 2023 09:33:47 +0800 Subject: [PATCH] Translate `library/re.po` intro part (#635) * Translate library/re.po intro part * Update re.po according to suggestion * Update string literal translation in library/re.po --------- Co-authored-by: Leo Wang --- library/re.po | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/library/re.po b/library/re.po index 66510021f6..6474df8f64 100644 --- a/library/re.po +++ b/library/re.po @@ -3,6 +3,7 @@ # This file is distributed under the same license as the Python package. # # Translators: +# Leo Wang , 2023 msgid "" msgstr "" "Project-Id-Version: Python 3.12\n" @@ -32,6 +33,7 @@ msgid "" "This module provides regular expression matching operations similar to those " "found in Perl." msgstr "" +"此模組提供類似於 Perl 中正規表示式的配對操作。" #: ../../library/re.rst:17 msgid "" @@ -42,6 +44,10 @@ msgid "" "substitution, the replacement string must be of the same type as both the " "pattern and the search string." msgstr "" +"被搜尋的模式 (pattern) 與字串可以是 Unicode 字串 (:class:`str`),也可以是 8-bit " +"字串 (:class:`bytes`)。然而,Unicode 字串和 8-bit 字串不能混用:也就是,你不能用 " +"byte 模式配對 Unicode 字串,反之亦然;同樣地,替換時,用來替換的字串必須與模式和搜尋" +"字串是相同的型別 (type)。" #: ../../library/re.rst:24 msgid "" @@ -57,6 +63,13 @@ msgid "" "future this will become a :exc:`SyntaxError`. This behaviour will happen " "even if it is a valid escape sequence for a regular expression." msgstr "" +"正規表示式使用反斜線字元 (``'\\'``) 表示特別的形式,或是使用特殊字元而不調用" +"它們的特殊意義。這與 Python 在字串文本 (literal) 中,為了一樣的目的使用同一個字元的" +"目的相衝突;舉例來說,為了配對一個反斜線文字,一個人可能需要寫 ``'\\\\\\\\'`` 當作" +"模式字串,因為正規表示式必須是 ``\\\\``,而且每個反斜線在一個普通的 Python 字串文本中" +"必須表示為 ``\\\\``。另外,請注意在 Python 的字串文本中使用反斜線的任何無效跳脫序列" +"目前會產生一個 :exc:`SyntaxWarning`,而在未來這會變成一個 :exc:`SyntaxError`。" +"儘管它對正規表示式是一個有效的跳脫序列,這種行為也會發生。" #: ../../library/re.rst:36 msgid "" @@ -67,6 +80,10 @@ msgid "" "a newline. Usually patterns will be expressed in Python code using this raw " "string notation." msgstr "" +"解決方法是對正規表示式模式使用 Python 的原始字串符號;反斜線在一個以 ``'r'`` 為前綴" +"的字串文本中不會被用任何特別的方式處理。所以 ``r\"\\n\"`` 是一個兩個字元的字串,包含" +" ``'\\'`` 和 ``'n'``,同時 ``\"\\n\"`` 是一個單個字元的字串,包含一個換行符號。通常" +"模式在 Python 程式中會使用這個原始字串符號表示。" #: ../../library/re.rst:43 msgid "" @@ -75,6 +92,9 @@ msgid "" "expressions `. The functions are shortcuts that don't require " "you to compile a regex object first, but miss some fine-tuning parameters." msgstr "" +"請務必注意到大部分的正規表示式操作是可以在模組層級的函式和 :ref:`" +"compiled regular expressions ` 中的方法使用的。這些函式是個捷徑" +"且讓你不需要先編譯一個正規表示式物件,但是會缺少一些微調參數。" #: ../../library/re.rst:51 msgid "" @@ -82,6 +102,8 @@ msgid "" "an API compatible with the standard library :mod:`re` module, but offers " "additional functionality and a more thorough Unicode support." msgstr "" +"第三方的 `regex `_ 模組,有著和標準函式庫" +" :mod:`re` 模組相容的 API,但是提供額外的功能以及更完整的 Unicode 支援。" #: ../../library/re.rst:59 msgid "Regular Expression Syntax"