2015-03-25 63 views
1

我能得到的輸入可能是需要完善這個表達式表達

/DemoSystems/DemoFramework/MyRepo/MyModule/tags/2015_02_22 

/DemoSystems/DemoFramework/MyRepo/MyModule/tags/2015_02_22/Demo.Tests/AverageTests.cs 

我需要在這兩種情況下提取。

/DemoSystems/DemoFramework/MyRepo/MyModule/tags/2015_02_22 

正則表達式:

^(.*?)tags 

是匹配直到

/DemoSystems/DemoFramework/MyRepo/MyModule/tags 

而增加的複雜性是2015_02_22可以是任何東西。數字字母和空格的混合。基本上取決於開發者。換句話說,我必須匹配到'標籤'+它後面的下一個文件夾。

任何指針?

+0

沒有指針,但我可能有一些元字符:-) – 2015-03-25 01:27:37

回答

2

您可以使用:

.*?tags\/[^\/]+ 

它將匹配從行開始任何東西,直到字tags,字tags/和下面的字符,直到另一個/(不含)或結束的字符串。

Online demo

+0

感謝。這工作。 – NotAgain 2015-03-25 01:33:57

+0

不客氣。還要注意,除非你想單獨在'tags'這個單詞之前捕獲內容,否則你不需要'()'。 – hek2mgl 2015-03-25 01:35:48

+2

@DeDee我猜測有10分鐘的冷卻時間,以便其他人可以在答案被接受之前添加輸入。 :) – NotAgain 2015-03-25 01:40:31