我正在使用python。我的问题是我有几个字符串,我必须检测他们的哪一部分看起来像一条路径,然后规范化那些实际路径。
例如我有几个不同的字符串喜欢如下:
1. .. \ .. \ .. \工作区
2. C:\源\工作区
3. -B .. \ .. \源
4. - 建立.. \ .. \工作\源.. \工作区
5. -HD:\ ABC \ BDS \工作区
基本上一些字符串是路径通俗易懂和一些具有尾随 - 附连到它们。选项字符串的长度是可变的。
在上面的例子中,字符串3,4,5包含一个预先附加了选项-B,-build,-H的路径字符串。
问题是如何从上面的例子中检测出,字符串的哪部分是路径,哪部分不是。选项不固定,所以我不能只检查给定的字符串的头部预先指定的选项。
要继续前进的唯一方法是从..开始的子字符串或之前的一个字符(例如C:或D :)。
所以问题是,是否有任何这样做的一般化的方式或python提供任何函数来从任何特定位置开始截取字符串的一部分?
满足上述5个例子的任何答案都很酷,即使它有点过度拟合。查找字符串是否为路径
我目前使用的代码例如2和5是:path = path[path.find(':')-1:]
和其他的path = path[path.find('.'):]
。但是这不是一般化和不酷的。所以我正在寻找更好的算法或解决方案。
的是're.split'甚或'str.split'什么 –
分裂?拆分需要拆分一些字符 – tejas
您无法检测路径名。例如,在linux上,路径允许包含除'\ 0'之外的任何字符。唯一被处理的字符是'\ 0',因为这会终止字符串,而'/'被用作路径分量分隔符,但这后一个事实并不重要/帮助... – pasztorpisti