Csvファイルの内容数千の行があり、その中のテキストを置き換えます。 MacBookPro1*.*,
PowerShellはCsvファイルの文字列を置換します
と
MacBookPro*,*,
は '*' ここではワイルドカードです。 テキストは、私は正規表現が得意ではないですし、助けを必要と
MacBookPro,
と交換するこの
MacBookPro13,1,
次のようになります。
Csvファイルの内容数千の行があり、その中のテキストを置き換えます。 MacBookPro1*.*,
PowerShellはCsvファイルの文字列を置換します
と
MacBookPro*,*,
は '*' ここではワイルドカードです。 テキストは、私は正規表現が得意ではないですし、助けを必要と
MacBookPro,
と交換するこの
MacBookPro13,1,
次のようになります。
Powershellで直接行うことができ、CSVもチェックインできます。
$string_var = 'MacBookPro*,*,'
$newstring_var=$string_var.Replace($string_var,'MacBookPro1*.*,')
$newstring_var
このことを教えてください。
csvファイルに複数のエントリがある場合は、すべてのエントリを置き換える必要があります。
$oldString = 'MacBookPro*,*,'
$newString = 'MacBookPro1*.*,'
$originalFilePath = "EnterPathToFileHere"
$newFilePath = "EnterNewPathToFileHere"
[io.file]::readalltext($originalFilePath).Replace($oldString, $newString) | Out-File $newFilePath -Encoding ascii –Force
*はワイルドカードであるため、これは機能しません –
それを解決することができ...
(Get-Content $ExportCsvFilePath) -replace 'MacBookPro(.*?),(.*?),','MacBookPro,' | Set-Content -Path $ExportCsvFilePath -Force
私はここで、ワイルドカードとして*を参照しています。すみませんでした。私は使用される正規表現を把握することができません。 –