代码之家  ›  专栏  ›  技术社区  ›  chowpay

从行尾开始的Excel文本到列分隔符

  •  0
  • chowpay  · 技术社区  · 6 年前

    我的专栏里有这样的字符串

    /name/safsdf/231232/asesa/filename.mp4
    /ds2/sasdsfsdf/2fd32/a234sa/filenameb.mp4
    ...
    ...
    

    所以文本到列的工作很好,我可以很容易地创建一个只有文件名而没有文件夹的列。

    我的问题是它前后不一致。

    所以有些行的值大于或小于5/这会使列出错。 例如:

    /name/safsdf/231232/asesa/filename.mp4
    /ds2/sasdsfsdf/2fd32/a234sa/filenameb.mp4
    /ds3/123/12321/123/123/filenamec.ts
    ...
    

    将导致最后一列为:

    filename.mp4
    filenameb.mp4
    123
    

    我希望结果是:

    filename.mp4
    filenameb.mp4
    filenamec.ts
    

    是否有一种方法可以反向执行文本到列的操作,即从行的末尾开始查找分隔符? 这会给我一个合适的文件名列表

    3 回复  |  直到 6 年前
        1
  •  2
  •   shrivallabha.redij    6 年前

    你已经有答案了。这里还有一个方法:

    =TRIM(RIGHT(SUBSTITUTE(A1,"/",REPT(" ",99)),99))

        2
  •  2
  •   PeterT    6 年前

    您需要的是反向字符串搜索,以获取最后一个“/”右侧的所有内容。

    公式(假设其中一个字符串位于A1中)将为

    =IF(ISERROR(FIND("/",A1)),A1,RIGHT(A1,LEN(A1)-FIND("~",SUBSTITUTE(A1,"/","~",LEN(A1)-LEN(SUBSTITUTE(A1,"/",""))))))
    

    看看 this answer this site 解释一下为什么会这样。

        3
  •  1
  •   pnuts    6 年前

    复制并替换 */ 什么都没有。

    推荐文章