正则表达式从文件路径中提取类名

时间:2013-11-28 08:27:31

标签: regex

让我说我有:

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

如何编写正则表达式以仅提取“MYCLASS”?

3 个答案:

答案 0 :(得分:1)

如果您使用的语言支持使用路径,请使用它。与Python中的os.path.split*类似。

正则表达式可以是([\w-]+)\.

答案 1 :(得分:1)

你可以试试这个:

<强>模式

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

<强> INPUT

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

<强>输出

MYCLASS

答案 2 :(得分:0)

\\([^\\]+)\.java应该这样做,虽然你可能需要摆弄捕获 - 现在它将匹配\和.java之间的任何东西。

另请注意,您需要提取捕获的组(索引0)。

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