正規表現(regexまたは正規表現と略される)は、主に文字列または文字列マッチングとのパターンマッチングで使用するための検索パターンを形成する一連の文字です。機能は、検索と置換の操作に似ています が、より複雑で具体的です。 正規表現の詳細な説明と使用文字の表については、 ウィキペディア のエントリを参照してください。
送信先一度に複数の正規表現を使用し、それらの間にパイプライン文字 |
挿入ます。
正規表現は、CAT デスクトップ エディターのフィルター、検索、置換フィールド、コンテンツ, 検索 機能の原文フィールドと訳文フィールド 、ファイル インポートの設定 のタグに変換機能 、およびカスタマイズで使用できます セグメンテーションルール。
大事な
Phrase は Java 正規表現, をサポートしています が、システムを過負荷から保護するために複雑な正規表現拒否ます。複素正規表現は、他の量指定子(所有格を除く)を含むグループに対して量指定子(所有格を除く)を持つ正規表現です。
ファイルをインポートするときにテキストをタグに変換し、エディターで検索および置換機能に正規表現を使用する例:
例 |
形容 |
---|---|
<[^>]+> |
represents <html_tag> |
\{[^\}]+\} |
{変数} を表します。 |
\[[^\]]+\] |
[変数]を表し、 |
\[\[.+?\]\] |
は [[AA[11]BB]] を表します。 |
\$[^\$]+\$ |
は $operator_Name1$ を表します。 |
\d+ |
は数値を表します。また、[0-9]+ |
[A-Za-z0-9] |
は、任意の英数字を表します。 |
.+\@.+\..+ |
email address name@domain.com |
\d{4}[-]\d{2}[-]\d{2} |
日付 2018-08-01 |
\s$ |
セグメントの終わりの空白 |
^\s |
セグメント冒頭の空白 |
\s\s |
ダブル空白 |
^\d |
セグメントの先頭の数字 |
\w+\s\s\w+ |
ワード数間の二重空白 |
\s\n |
任意の空白文字が前に付く改行 |
\S\n |
空白以外の文字が前に付く改行 |
<[^>]+>|\$[^=]+= |
PHP 変数と HTML コードを変換します ($svariable['name'] =) |
^\s*\'[^:]+: |
行の先頭に追加済空白を含むJavaScriptのフィールドキーを変換します( 'キー' :) |
\{\{[^\}]+\}\}|\'[^']+\' |
'{{text here}} コンテンツを変換 {{text here}} せず、タグに変換します |
特定テキストをインポートする際の正規表現の例:
-
## エラーメッセージ ##1## 数値は 0 より大きくなければなりません。##Z##
##1## と ##Z## の間のテキスト送信先 インポート、正規表現: (?<=##1## ).*(?= ##Z## , )
-
エラー メッセージ ("数値は 0 より大きくする必要があります。")
(" と ") , の間の テキスト送信先 インポート、正規表現:
(?<=\(").*(?="\)) を使用します。
'エラーメッセージ' = '数値は 0 より大きくなければなりません。
= 記号の後 、' と ' の間のテキスト送信先 インポート、正規表現: (?<=\= ').*(?= ' , )を使用します。
-
エラーメッセージ = "これは翻訳されます"
送信先 インポート = 記号の後および 'and'の間のテキストでは、正規表現:
(?<=\= ").*(?=")
-
msgstr ("数値は 0 より大きくなければなりません。")
TXT フィルターを使用してモノリンガル PO ファイルで msgstr 文字列 送信先 インポート、正規表現:
(?<=msgstr ").*(?=")
# 注記:これは備考です
# で始まる 行を除外送信先、正規表現: (^[^# , ].*) を使用します。
値 '126', 'DCeT', 'テキスト (en)'
テキスト (en)' のように、引用符で囲まれた テキストと (en), を含むテキストのみ送信先 インポート、正規表現 : (?<=')[^']*\(en\)(?=')を使用します。
JSON 構造の例:
{
"list": {
"id":"1",
"value": "text 1 for translation."
},
"text": {
"id":"2",
"value": "text 2 for translation."
},
"menu": {
"id":"3",
"value": "text 3 for translation."
},"array": ["blue","green"],"arrays": [{ "color": "blue", "title":"BLUE"
}, { "color": "green", "title":"GREEN" } ]}
-
レベルに関係なくすべての値をインポートするには、
(^|.*/)値
リストから 1 つの値のみをインポートするには、リスト/値
を使用します。-
リストやメニューから値をインポートするには、|(OR) 演算子:
リスト/値|メニュー/値
メニューから値の最初のインスタンスのみをインポートするには、menu\[1\]/value
を使用します。-
特定のキーに続くJSON配列のコンテンツをインポートするには、
(^|.*/)array\[.*\]
-
オブジェクトの特定配列のコンテンツインポートには、
(^|.*/)arrays\[.*\].*
YAMLのノミの例:
タイトル:A
テキスト:翻訳A
カテゴリ:
タイトル:B
text: translate B
カテゴリ:
タイトル:C
text: translate C
カテゴリ:
コンテンツ:
タイトル:D
テキスト:D を翻訳
インポート正規表現:
-
「翻訳A」のみ : テキスト
-
'翻訳 C': カテゴリ\[2\]/テキスト
-
only 'translate D': categories\[\d+\]/content[\1\]/text
-
all text: text|categories\[\d+\]/text|categories\[\d+\]/content[\d+\]/text
Okapi, 、Java 、およびユニコードは、のセグメンテーションルールに使用されます。 SRX ファイルにエクスポートします。
で正規表現を使用する。SRXファイルは複雑であり、仕事する前に正規表現使用に関する基本的な知識が推奨されます。
ノーブレークルール(略語など)とブレークルール(ドットを含む文末など)は にあります。SRX ファイルにエクスポートします。
例
形容
[\p{C}]
不可視の制御文字。
[\p{Z}]
空白
[\p{Lu}]
小文字のバリエーションを持つ大文字。
[\p{N}]
任意の種類の数字。
\Q ... \E
引用の開始と終了 - (\QApprox.\E)。これは略語に使用されます。
\t
タビュレータ
\n
改行
\u2029
段落区切り
\u200B
幅ゼロのスペース
\u3002
表意文字のフルストップ
\ufe52
小さなフルストップ
\uff0e
全幅フルストップ
\uff61
半角表意文字フルストップ
\ufe56
小さな疑問符
\uff1f
全角疑問符
\u203c
二重感嘆符
\u2048
疑問符
\u2762
重い感嘆符の飾り
\u2763
重いハートの感嘆符飾り
\ufe57
小さい感嘆符
\uff01
全角感嘆符
QAチェック
ソース正規表現
ターゲット正規表現
訳文の追加番号
\d
\d
タグ オーダー (ペアなし)
^.*\{1\}.*\{2\}.*$
^.*\{1\}.*\{2\}.*$
タグ オーダー (ペアなし)
^.*\{1\}.*\{2\}.*\{3\}.*$
^.*\{1\}.*\{2\}.*\{3\}.*$
タグ オーダー (ペアなし)
^.*\{1\}.*\{2\}.*\{3\}.*\{4\}.*$
^.*\{1\}.*\{2\}.*\{3\}.*\{4\}.*$
タグ オーダー (ペア)
^.*\{1\>.*\<1\}.*\{2\>.*\<2\}.*$
^.*\{1\>.*\<1\}.*\{2\>.*\<2\}.*$
タグ オーダー (ペア)
^.*\{1\>.*\<1\}.*\{2\>.*\<2\}.*\{3\>.*\<3\}.*$
^.*\{1\>.*\<1\}.*\{2\>.*\<2\}.*\{3\>.*\<3\}.*$
タグ前のスペース
\s(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})
\s(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})
タグ後のスペース
(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})\s
(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})\s
タグの前にスペースがない
\S(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})
\S(\{[1-9][0-9]*\}|\{[1-9][0-9]*>|<[1-9][0-9]*\}|\{[biu_\^]{1,4}>|<[biu_\^]{1,4}\})
角括弧欠落
[^\[\]]*\[[^\[\]]*\][^\[\]]*
[^\[\]]*\[[^\[\]]*\][^\[\]]*
欠落 個の丸括弧
[^\(\)]*\([^\(\)]*\)[^\(\)]*
[^\(\)]*\([^\(\)]*\)[^\(\)]*