我有一個像'/foo/bar1/bar2/test.txt'
這樣的路徑字符串。我想從字符串中檢索'/foo/bar1/'
,並且想要忽略其餘部分。我試圖用\/([\w\s]+)\/|,(?!\w)+?
這樣做,但沒有幫助。檢索python中只有一部分字符串
有人可以幫助我嗎?
在此先感謝
我有一個像'/foo/bar1/bar2/test.txt'
這樣的路徑字符串。我想從字符串中檢索'/foo/bar1/'
,並且想要忽略其餘部分。我試圖用\/([\w\s]+)\/|,(?!\w)+?
這樣做,但沒有幫助。檢索python中只有一部分字符串
有人可以幫助我嗎?
在此先感謝
s = '/foo/bar1/bar2/test.txt'
'/'.join(s.split('/')[:3])
# returns '/foo/bar1'
變化是3
到相應的號碼。有關進一步的路徑操作,請參閱os.path
方法。
+1 for steering OP遠離這裏的正則表達式 – bernie 2012-03-28 07:42:41
謝謝eumiro :) ...正則表達式並不總是我認爲的最佳解決方案 – 2012-03-28 07:47:26
一般來說,在處理文件路徑時,幾乎總是要使用簡單的字符串方法(如'split')或'os .path'方法,這些方法在操作系統和文件路徑約定中都很健壯。 – 2012-03-28 07:58:45
你究竟想在這裏做什麼? – 2012-03-28 07:37:28
'/ foo/bar1 /'有什麼特別之處?對於正則表達式,必須有一個嚴格的指標來選擇正確的部分。或者對於** eumiro **的回答,更改'/'或更改字符串的數量可能會解決錯誤的答案。 您真的在這裏嘗試做什麼?... – FallenAngel 2012-03-28 07:52:20