2014-09-25 85 views
3

我想將正則表達式轉換爲glob如何將正則表達式轉換爲extglob表達式?

我正在尋找jakarta oro但我無法找到適合我需求的方法。它編譯正則表達式並返回其等值整型

它們都是Type-3語法,所以理論上它應該是可能的。

我不幸受到使用JDK5的限制。

+0

http://stackoverflow.com/questions/1247772/is-there-an-equivalent-of-java-util-regex-for-glob-type-patterns – sol4me 2014-09-25 15:47:02

+2

@ sol4me這是glob - >正則表達式 – Rob 2014-09-25 15:48:52

+0

我不'例如,認爲glob可以支持,例如,lookaround。所以這在一般情況下是不可能的。如果您想要了解特定案例的詳細信息,則必須更具體......。 – 2014-09-25 15:50:11

回答

0

extglob可以搭配一些正則表達式結構的(pattern-list是變更的列表):

extglob   regex 
-------------- ----------------- 


?     [^/] 
*     [^/]* 
.     \. 
**    . 
?(pattern-list) (pattern-list)? 
*(pattern-list) (pattern-list)* 
+(pattern-list) (pattern-list)+ 
@(pattern-list) (pattern-list) 
!(pattern-list) (?!pattern-list) 

有一些事情,正則表達式確實不能在extglob做,據我所知,太:

?????????????? [^abc] 
?????????????? \1 
?????????????? most look arounds 

假設所有在正則表達式的構建體具有extglob當量,將有可能將其轉換爲extglob形式。這將是困難的,因爲正則表達式由CFG代表。而你正在使用Java,這迫使你使用邪惡的逃脫逃脫\\

爲什麼不使用支持正則表達式的不同bash實用程序?像this

相關問題