2013-11-28 44 views
-4

提取類名比方說,我有:正則表達式從一個文件路徑

D:\workspace\src\com\package\MYCLASS.java 

我怎樣寫一個正則表達式只提取「MYCLASS」?

+0

向我們展示你的代碼 – dognose

+1

任何特定的編程語言? – Artur

+1

@Artur是否重要?他只是想要一個正則表達式我猜。 – Tafari

回答

1

如果您正在使用的語言支持使用路徑,請使用它。像Python中的os.path.split*一樣。

正則表達式可以([\w-]+)\.

0

\\([^\\]+)\.java應該這樣做,儘管您可能需要搗鼓捕獲 - 現在它將匹配\和.java之間的任何內容。

還要注意,您需要提取捕獲的組(索引0)。

如果您使用的語言支持lookarounds(?<=\\)[^\\]+(?=\.java)也將匹配而不使用使用捕獲。

+0

這是完美的,但我使用ANT,並且不支持週轉。 – facewindu

+0

對,那麼第一個可能是最好的你會得到。 – brandonscript

1

你可以試試這個:

PATTERN

(?<=\\)[^\s\\]+?(?=\.java) 

INPUT

D:\workspace\src\com\package\MYCLASS.java 

輸出

MYCLASS