如果說有一點我堅信的話,我覺得所有的翻譯都應(yīng)該學(xué)一點正則表達(dá)式或者正則表達(dá)式。事實上,它可能不會讓任何人知道如何使用它們,因為它們對操作文本非常有用,尤其是在處理電子表格時。今天開始思考這篇文章的時候,我在想,為了更好的翻譯,應(yīng)該如何對正文進(jìn)行劃分。我在考慮用什么數(shù)據(jù)。我確定了數(shù)據(jù)列表,因為這種問題經(jīng)常出現(xiàn)在社區(qū)中,并創(chuàng)建了一些樣本文件供我使用這個維基百科頁面。這是一個很好的列表,所以我把它作為純文本直接復(fù)制到Excel中,這使我得到了一個水果格式的列表,正如我希望看到的,如果我翻譯它,每段一個水果。然而,因為我想重新列出這些列表,我們看到翻譯人員是從他們的客戶那里得到的。我將列表復(fù)制到文本編輯器中,并使用正則表達(dá)式將硬回車替換為逗號和空格(r ^ n), 然后打破了文件的字母順序...我花了大約一分鐘。我相信這個簡單的操作對各行各業(yè)的很多人都是有用的。但是我跑題了。......
現(xiàn)在,我已經(jīng)從列表中創(chuàng)建了三個文件,我將用它們來解釋在SDL Trados Studio中通過使用翻譯記憶庫中的分段規(guī)則來分段文本的概念。
逗號和空格分隔的列表
逗號分隔列表
制表符分隔的列表
在沒有創(chuàng)建自定義分段規(guī)則的Studio中,我會看到類似這樣的內(nèi)容:
逗號加空格
只有逗號
制表符分隔
我認(rèn)為所有這些都是我們看到的用戶處理的最常見的問題,我希望他們能夠解釋你可以用來拆分任何內(nèi)容的概念。所以,首先讓我們看看你在哪里創(chuàng)建這些規(guī)則。Trados Studio首先根據(jù)文件結(jié)構(gòu)對文件進(jìn)行分段,然后使用翻譯記憶庫中的分段規(guī)則。因此,如果您有一個word文件,并且您以一個完整的句點后跟一個空格結(jié)束一個句子,或者您按enter鍵插入一個硬回車(或一個段落分隔符),當(dāng)Studio打開它們時,您將獲得一個單獨的句子(或段落)。像這樣:
如果使用的是標(biāo)記文件(比如XML或HTML),分段是由各個元素的解析器規(guī)則控制的。例如,用不正確的解析器規(guī)則打開一個XML文件可能會導(dǎo)致類似這樣的情況,其中文件根據(jù)每句話尾的句點進(jìn)行分段,內(nèi)聯(lián)元素(nice、info和not)被錯誤地設(shè)置為結(jié)構(gòu)化元素(有關(guān)這個相當(dāng)大的主題的更多信息,請參閱本文):
但是,如果文件的結(jié)構(gòu)設(shè)置正確,您可能需要解決的唯一問題是,當(dāng)您想要進(jìn)一步分解它時,將文本片段作為單個細(xì)分放入Studio,這將使我回到我的切片水果。
細(xì)分規(guī)則分段規(guī)則存儲在翻譯記憶庫或語言資源模板中。兩個地方的選項完全一樣。語言資源模板與項目模板非常相似,因為它們?yōu)槟峁┝艘环N基于您經(jīng)常使用的配置創(chuàng)建新翻譯記憶庫的方法。因此,您可以在語言資源模板中設(shè)置變量列表、縮寫列表、序數(shù)跟隨列表和分段規(guī)則等內(nèi)容,并在創(chuàng)建新的翻譯記憶庫時將其作為基礎(chǔ):
如上所示,您可以通過選擇新建-新建語言資源模板,在翻譯記憶庫視圖中創(chuàng)建新的語言資源模板。您也可以基于之前的模板創(chuàng)建新的翻譯記憶庫,但使用這些模板非常方便,因為它們占用的空間非常小,并且可以輕松地與他人共享。我認(rèn)為應(yīng)用翻譯記憶庫模板應(yīng)用程序以類似于應(yīng)用程序項目模板的方式工作會很方便...我們可能在不久的將來看到它的可行性。
要在翻譯記憶庫中編輯分段規(guī)則,請在翻譯記憶庫視圖中打開它,并從功能區(qū)中選擇設(shè)置,或右鍵單擊并從上下文菜單中選擇設(shè)置:
請注意,您必須選擇一個翻譯記憶庫才能使用功能區(qū)圖標(biāo),否則該圖標(biāo)將呈灰色顯示。完成此操作后,您將在語言資源節(jié)點下找到分段規(guī)則。如果你創(chuàng)建一個語言資源模板,你會發(fā)現(xiàn)下面顯示的語言資源節(jié)點下面只列出了設(shè)置,所以我要解釋的一切都是一樣的。
然后,選擇分段規(guī)則并單擊編輯。下一個窗口有兩個選項:
基于段落的分段
基于句子的分割
第一個選項(基于段落)不支持自定義分段規(guī)則。只是根據(jù)段落而不是句子來劃分文件的一種方式。段落是由我之前解釋的文件類型結(jié)構(gòu)決定的。你可以在這篇文章中讀到更多關(guān)于段落分割的內(nèi)容,因為它在適當(dāng)?shù)那闆r下是一個有用的選項。對于我們的切片水果,我們將使用基于句子的分段,您會發(fā)現(xiàn)三個默認(rèn)規(guī)則:
完全停止規(guī)則
其他結(jié)尾標(biāo)點符號(問號、解釋符號)
結(jié)腸
一般來說,除非你有一個非常具體的理由來改變它們,并且你明白為什么它是必要的,否則我會留下這些。除了更改規(guī)則之外,還有一些選項可以在編輯規(guī)則時添加例外。如果你真的玩這方面的游戲,我建議你先嘗試使用異常,因為這樣通常更安全。但是我們需要增加新的規(guī)則。
添加分段規(guī)則
新的細(xì)分規(guī)則通過定義三條信息來工作:
在你斷一個新句子之前有哪些字符?
你到底想打破什么角色?
休息之后會出現(xiàn)哪些人物?
有兩種視圖可以應(yīng)用這些規(guī)則,即基本視圖:
和高級視圖:
您會注意到高級視圖只有兩個信息位置,而基本視圖有三個。這是因為高級視圖使用正則表達(dá)式,而前中斷模式包含您在基本視圖中輸入的前兩條信息。
您創(chuàng)建的規(guī)則是按順序處理的。因此,如果我們要分割第一個水果文件,即水果之間的空間,我們必須做兩件事:
在逗號前斷開
空格后斷開
之所以要這么做,是因為我們可以自己處理這些詞,在編輯器中過濾掉逗號和空格。這并不總是顯而易見的,因為基本視圖不會為我們提供我們需要的所有選項,除非它們非?;荆⑶以噲D將它們添加到基本視圖,然后切換到高級視圖通常會導(dǎo)致表達(dá)式,因為它們可以被轉(zhuǎn)義兩次,然后尋找反斜杠的存在,而不是指向特定模式的反斜杠。因此,為了解決這個問題,我總是在基本視圖中使用正確的信息,然后使用大寫字母X來表示不存在的信息。這使我更容易根據(jù)基本要求編輯高級視圖。最好用一個例子來說明:
在休息之前-我想確定在最后一個字母之前有字母。

斷開字符-這將是逗號前的最后一個字母。我不能用表達(dá)式輸入這個,所以我用一個大寫的x。
在break之后——我想要一個逗號和一個空格,所以用s作為空格,檢查正則表達(dá)式。
當(dāng)我切換到高級視圖時,我看到:
很難讀,所以這是我的:
[ w p {P}] [X] +,s
現(xiàn)在很容易看到大寫的X,我要做的就是用一個單詞字符的正則表達(dá)式替換它。為此,我將使用w,表達(dá)式如下:
[ w p {P}] [ w] +
當(dāng)我使用包含這些規(guī)則的翻譯記憶庫打開文件時,Studio將如下圖所示打開文件,并顯示逗號前的文本。
所以我現(xiàn)在要做的是在逗號和空格之后創(chuàng)建第二個規(guī)則。這個很有意思,因為我在break之前什么都沒有,因為逗號現(xiàn)在在片段的開頭,所以我把這個條目刪掉了,留空了。然后我輸入大寫字母X作為分隔符,這樣我就可以在高級視圖中添加逗號和空格,并選擇分隔符后的文本:
這給了我以下信息:
[X] + [ w p {P}]
我為逗號和空格而不是x添加了一個正則表達(dá)式,如下所示:
[,s] + [ w p {P}]
然后,當(dāng)我在Studio中打開文件時,這次我得到了我需要的內(nèi)容,我可以過濾掉逗號,看到類似這樣的內(nèi)容:
現(xiàn)在用這個文件來翻譯簡直是輕而易舉。我將確保只有單詞被輸入到我的翻譯記憶中。如果我愿意,我可以更容易地將它們添加到術(shù)語庫中,并確保術(shù)語識別,因為逗號不會出現(xiàn)在方法中。