[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] PowerShell通过切分取路径中的某一部分

代码一可以成功取到歌曲名 晴天
代码二歌曲名  晴 天 a,b  中有了空格和符号,就取不到了, 求更稳定的方法, 提前感谢
-----------------------------------------------------------------------

代码一:
$p="C:\Users\Administrator\Desktop\PS检查条件\1\19 周杰伦 - 晴天"
$p.split("\")[-1]

$delim=$p.split("\")[-1].split(" -",[StringSplitOptions]::RemoveEmptyEntries)
$delim[2]
-----------------------------------------------------------------------
代码二:

$p="C:\Users\Administrator\Desktop\PS检查条件\1\19 周杰伦 - 晴 天 a,b"
$p.split("\")[-1]

$delim=$p.split("\")[-1].split(" -",[StringSplitOptions]::RemoveEmptyEntries)
$delim[2]

  1. $p="C:\Users\Administrator\Desktop\PS检查条件\1\19 周杰伦 - 晴 天 a,b"
  2. $p.split("\")[-1]
  3. $delim=$p.split("\")[-1] -split '[a-z,-]'
  4. $delim[1].trim()
复制代码

TOP

本帖最后由 5i365 于 2022-2-5 22:01 编辑

回复 2# idwma


    感谢帮忙, 代码二, 我需要提取   

晴 天 a,b    

即-后面的除了一个空格,其它都需要

TOP

回复 3# 5i365
  1. $p="C:\Users\Administrator\Desktop\PS检查条件\1\19 周杰伦 - 晴 天 a,b"
  2. $p.split("\")[-1]
  3. $delim=$p.split("\")[-1].split("-")[1].trim()
  4. $delim
复制代码

TOP

回复 4# idwma


    多谢帮忙, 取歌名应该很稳了,
但是以前的分割方式,如果歌名中没有空格和字符的话, 可以用下面的方法分别取序号和歌手名和歌名, 现在有简单点的方法取序号和歌手名吗?
$delim[0]
$delim[1]
$delim[2]

TOP

  1. $p="C:\Users\Administrator\Desktop\PS检查条件\1\19 周杰伦 - 晴 天 a,b"
  2. $p.split("\")[-1]
  3. $delim+=@($p.split("\")[-1].split("-")[0].trim().split(" "))
  4. $delim+=@($p.split("\")[-1].split("-")[1].trim())
  5. $delim[0]
  6. $delim[1]
  7. $delim[2]
复制代码
回复 5# 5i365
1

评分人数

    • 5i365: 技术牛X, 乐于助人技术 + 1

TOP

返回列表