How to Replace comma in double quotes Using PowerShell

SURESH0518
SURESH0518 used Ask the Experts™
on
I have CSV file which has following line
111,222," 1,876,890"

I would like to have output as follows
111,222,1876890

How can I do this in Power Shell?
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Most Valuable Expert 2018
Distinguished Expert 2018
Commented:
If the csv file has a header line:
$Col = '<Name of Column 3>'
Import-Csv -Path C:\Temp\input.csv |
	ForEach-Object {$_.$Col = $_.$Col.Replace(',', '').Trim(); $_} |
	ConvertTo-Csv -NoTypeInformation |
	ForEach-Object {$_.Replace('"', '')} |
	Set-Content -Path C:\Temp\output.csv

Open in new window


If it does not have a header line:
Import-Csv -Path C:\Temp\input.csv -Header Col1, Col2, Col3 |
	ForEach-Object {$_.Col3 = $_.Col3.Replace(',', '').Trim(); $_} |
	ConvertTo-Csv -NoTypeInformation |
	Select-Object -Skip 1 |
	ForEach-Object {$_.Replace('"', '')} |
	Set-Content -Path C:\Temp\output.csv

Open in new window

Top Expert 2014

Commented:
You can cast the field as a number, rather than doing any string operations.
Example:
PS C:\Users\Mark> [int]" 1,876,890"
1876890

Open in new window

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial