2011-10-13 182 views
1

我需要一個正則表達式的所有字母。我有一個輸入和目標文本。他們都可以屬於不同的字母。我的意思是他們可以屬於中文,拉丁文,西里爾文和任何其他字母。正則表達式爲所有字母

我需要一個多語言輸入和多語言目標文本的正則表達式。

有沒有人有這方面的想法?我怎樣才能寫這個正則表達式?

我將在javascript中使用它。但我認爲,應該爲Java和JavaScript的普通正則表達式也爲這個問題。

+1

Java!= JavaScript –

+0

真的!我知道他們不一樣。正則表達式很常見,所以我可以使用相同的正則表達式來處理JAVA,JAVASCRIPT或GROOVY! – erimerturk

+1

@erimerturk不,你不能。在[regular-expressions.info](http://www.regular-expressions.info/refflavors.html)上查看她的風味比較。 javascript是「ECMA」列 – stema

回答

0

我用「|」這個角色作爲分隔符,所以它對我來說是特別的。鍵可以是除「|」以外的任何字符。它解決我的問題,謝謝你的答案。它可以與JavaScript,Java和Groovy一起使用。我測試了它,工作。

var keyPrefix ="\\|[\u0000-\u007B\u007D-\uFFEF]*"; 
var keySuffix = "[\u0000-\u007B\u007D-\uFFEF]*\\|"; 
var searchkey = keyPrefix + key.toLowerCase() + keySuffix; 
2

一些正則表達式引擎支持特殊字符所有Unicode字母:

\p{L} 

或者你可以使用\w - 字母,數字,下劃線

+0

我不能使用「\ p {L}」來表示javascript。例如,「\ w」是不夠的,輸入是「ığç」,目標文本是「ığçss」。所以這對我來說不是解決方案。 – erimerturk

4

如果你是在Java中(不是在JavaScript!),你可以使用unicode屬性,例如

\P{L}來自任何語言的任何類型的信件。

有關更多信息,請參見regular-expressions.info/unicode

爲JavaScript:

有來自XRegExp一個lib和擴展javasript正則表達式的功能一些插件XRegExp Unicode plugins。這增加了對Unicode類別,腳本和塊的支持。

使用這些庫,您將可以使用帶有JavaScript的\p{L}

見我的回答this question一個小例子

+0

我不能使用此JavaScript的。我需要JavaScript。所以這對我來說不是解決方案。 – erimerturk

+0

@erimerturk我更新了我的答案。 – stema