Board logo

标题: [问题求助] PowerShell怎样按照段落合并? [打印本页]

作者: DAIC    时间: 2013-9-5 16:51     标题: PowerShell怎样按照段落合并?

文本如下,每个段落之间是用一个空行分割的,每个段落的行数不确定:

user: student1
pass: password1

user: student2
pass: password2
home: beijing

user: student3
pass: password3

希望把每个段落合并成一行,用逗号分割:

user: student1,pass: password1
user: student2,pass: password2,home: beijing
user: student3,pass: password3
作者: PowerShell    时间: 2013-9-5 20:09

搞2遍,第一遍把回车替换成逗号,第二遍把行尾的逗号替换成回车.
作者: terse    时间: 2013-9-6 00:40

本帖最后由 terse 于 2013-9-6 01:05 编辑

回复 1# DAIC
初涉PS  挺原始的写法 代码不规范和错误写法 请指正
总感觉应该有更简单的  你在查看下 对象方法
忘记加分隔符
再看下PS的正则 刚刚正则用不了
  1. $s = $null
  2. foreach ($str in cat c:\test\test.txt) {
  3. if ("$str" -eq "$null") {
  4. "$s"
  5. $s = $null
  6. }
  7. else
  8.         {
  9. if ("$s" -eq "$null") {
  10. $s = $str
  11. }
  12. else
  13.          {
  14. $s = $s,$str -join ";"
  15.          }
  16.         }
  17. }
  18. $s
复制代码

作者: suseek    时间: 2014-2-3 11:11

$s =""
foreach ($str in cat e:\su\powershell\shell1\bb.txt) {
        if ("$str" -ne "") {
            $s=$s+","+$str        
        }else{
          $s.substring(1)   
          $s=""
        }                    
}
$s




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2