Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Variables 使用Powershell替换CSV中的变量_Variables_Powershell_Csv_Scripting - Fatal编程技术网

Variables 使用Powershell替换CSV中的变量

Variables 使用Powershell替换CSV中的变量,variables,powershell,csv,scripting,Variables,Powershell,Csv,Scripting,我有一个混乱的CSV文件,每周都会生成。这是我的开始: Company,Division,Department,Location,Job Title,Username 1-Acme INC,9000-CSD,6003-CSD IT,2-Downtown,IT Technician,user1 1-Acme INC,9000-CSD,6002-CSD HR,2-Downtown,HR Generalist,user2 我真正想要的是: Company,Division,Department,Lo

我有一个混乱的CSV文件,每周都会生成。这是我的开始:

Company,Division,Department,Location,Job Title,Username
1-Acme INC,9000-CSD,6003-CSD IT,2-Downtown,IT Technician,user1
1-Acme INC,9000-CSD,6002-CSD HR,2-Downtown,HR Generalist,user2
我真正想要的是:

Company,Division,Department,Location,Job Title,Username
Acme INC,CSD,CSD IT,Downtown,IT Technician,user1
Acme INC,CSD,CSD HR,Downtown,HR Generalist,user2
基本上我只想去掉该字段的“[numeric]-”部分。我在上下搜索过,找到了用powershell替换CSV字符串的不同变体,但没有找到使用powershell替换CSV中变量文本的正确语法

这就是我目前所拥有的。当我检查输出时,没有任何变化

$csv = Import-Csv .\test.csv
$csv | %{ $_ -replace "^[0-9]+-"}
$csv| Export-Csv .\test.csv -NoTypeInformation -Force
任何帮助都将不胜感激

您需要使用:

$csv = get-content .\test.csv
$csv = $csv -replace "[0-9]+-", ""
$csv | out-file .\test.csv
或者第2行可以是:

$csv = $csv -replace "[0-9]+-"

当我尝试这样做时,它实际上删除了CSV文件中的所有文本,并将其替换为:Length 388需要换行才能正确执行此操作,但希望您能找到答案
$csv=“1-Acme INC,9000-CSD,6003-CSD IT”$csv=$csv-替换“[0-9]+-”$csv
为我返回Acme INC,CSD,CSD IT。请注意,我删除了“^”,这导致它只替换行开头的数字。Tony,这就是我试图逃避的问题。我们这里有数千种可能的选项,所以如果必须输入每种可能性,我也可以不编写脚本。我希望用regex来代替“numeric-”条目。我认为导入csv是这里的症结所在。我在使用$csv变量,就像您在使用get content一样。让我测试一下…为什么不将csv文件作为文本文件处理?您仍然可以将结果输出文件作为csv导入。