我有一个像'/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