PowerShell从字符串中提取字符

时间:2016-08-26 16:12:13

标签: string powershell extract

我在.csv文件中有一个用户名列表。看起来像这样

<!DOCTYPE html>
<html lang="eng">
  <head>
    <title>animate</title>
    <link rel="stylesheet" href="style.css">
    <script type="text/javascript" src="animate.js"></script>
  </head>
  <body>
    <div id="nav">
    </div>
    <section class="height"></section>
  </body>
</html>

我想提取第一个和最后一个名字的第一个字母以放入另一个变量。不知道如何做到这一点。这是我的代码,它将给我第一个字母。

PC,User
comp-1,john.doe
PC-2,steven.smith
MAC-1,betty.crocker

输出就是这个

 $PepCSV = import-csv C:\pep.csv 
 foreach($X in $PepCSV)
   {
   $UserName = $X.User
   $UserInt = $UserName.Substring(0,1)
   Write-Output "UserName = $UserName `n UserInt = $UserInt"
   } 

如何获取UserInt的第二个字母?

2 个答案:

答案 0 :(得分:1)

您可以通过此codelet获取姓氏的第一个字母:

 $PepCSV = import-csv C:\pep.csv 
 foreach($X in $PepCSV)
 {
 $UserName = $X.User
 $UserInt = $UserName.Substring(0,1) + ($Username -split '\.')[1].substring(0,1)
 Write-Output "UserName = $UserName `n UserInt = $UserInt"
 } 

答案 1 :(得分:1)

-replaceregexp一起使用,除了首字母和管道外,还可以删除所有内容:

import-csv C:\pep.csv | %{
    'UserName = ' + $_.User
    ' UserInt = ' + ($_.User -replace '(.).*?\.(.).*', '$1$2')
}
相关问题