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

[问题求助] 求指点PowerShell正则删除指定字符

下面的代码, 我想找到每行最后一个#,
然后删除其前的空格(如果有)
再删除#号及其后面的字符,
如果一行最前有个#后面是字符, 则此行将变成空行,也需要删除掉

求高手指点一下正则! 多谢!

最后要得到下面结果:

#Trim(#)
Ab.T#rim()
A#b.Trim()
  1. @'
  2. #Trim(#)#aabc
  3. Ab.T#rim() #baaa
  4. #AAA
  5.    #BBB
  6. A#b.Trim()    #ccccccc
  7. '@ -replace '\s*#.+'
复制代码

本帖最后由 flashercs 于 2022-7-16 22:36 编辑
  1. @'
  2. #Trim(#)#aabc
  3. Ab.T#rim() #baaa
  4. #AAA
  5.    #BBB
  6. A#b.Trim()    #ccccccc
  7. '@ -replace '(?m)\s*#[^#\n]*$'
复制代码
微信:flashercs
QQ:49908356

TOP

回复 2# flashercs


    感谢大侠, 我试了一下, 下面多行字符串执行后, 第一行有空行
  1. @'
  2. #AAA
  3. #Trim(#)#aabc
  4. #BBB
  5. #CCC
  6. Ab.T#rim() #baaa
  7. #CCC
  8.    #BBB
  9. A#b.Trim()    #ccccccc
  10. '@ -replace '(?m)\s*#[^#\n]*$'
复制代码

TOP

本帖最后由 flashercs 于 2022-7-17 15:18 编辑

回复 3# 小白龙
  1. @'
  2. #AAA
  3. #Trim(#)#aabc
  4. #BBB
  5. #CCC
  6. Ab.T#rim() #baaa
  7. #CCC
  8.    #BBB
  9. A#b.Trim()    #ccccccc
  10. '@ -replace '(?m)(?>^\s*#[^#\n]*$\n?|\s*#[^#\n]*$)'
复制代码
  1. @'
  2. #AAA
  3. #Trim(#)#aabc
  4. #BBB
  5. #CCC
  6. Ab.T#rim() #baaa
  7. #CCC
  8.    #BBB
  9. A#b.Trim()    #ccccccc
  10. #ttt
  11. '@ -replace '(?m)(?>^\s*#[^#\n]*$\n?|[^\S\n]*#[^#\n]*$)'
复制代码
1

评分人数

微信:flashercs
QQ:49908356

TOP

返回列表