[英]How to parse strings in a table cell generated by format-table in powershell?
我使用以下comlet来获取数据:
import-csv .\ConnectionStrings.txt -Delimiter "`t" -Header Firms, URLs, Config, Type | format-table -Property Firms, URLs -HideTableHeaders -outvariable content
#Not working part
for($i = 0; $i -lt $content.Count; $i++){
$url = $content[$i][1]
$instance = $url.SubString(0, $url.IndexOf(".") - 1)
}
下面是import-csv ... cmdlet的结果:
value1 url1.test.com
value2 url2.test.com
value3 urle3.test.com
...
valuen urln.test.com
我用getType检查$ content,它是ArrayList。 我以为可以将其用作C#ArrayList,因为我需要解析第二列以获取url部分。 但是没有用。 目前,我认为我处于死胡同,不知道该去哪里。
format-table
用于将对象显示为文本表。 但是,您想访问import-csv
给您的对象的内部。 因此,您不需要format-table
。 $content
是由import-csv
构建的对象的ArrayList,而不是ArrayLists或数组的ArrayList。 您已经使用-Header
选项告诉了import-csv
要构建哪种对象,所以只需使用它即可。 进行相关更改,我得到以下代码:
$content = import-csv .\ConnectionStrings.txt -Delimiter "`t" -Header Firms, URLs, Config, Type
for($i = 0; $i -lt $content.Count; $i++){
$url = $content[$i].URLs
$instance = $url.SubString(0, $url.IndexOf("."))
Write-Host $instance
}
给出以下输出:
url1
url2
urle3
urln
我想您正在寻找的是哪个。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.