Sponsored Content
Top Forums Shell Programming and Scripting Replace Double quotes within double quotes in a column with space while loading a CSV file Post 302943638 by mlavanya on Monday 11th of May 2015 11:14:51 AM
Old 05-11-2015
Replace Double quotes within double quotes in a column with space while loading a CSV file

Hi All,

I'm unable to load the data using sql loader where there are double quotes within the double quotes As these are optionally enclosed by double quotes.

Sample Data :

Code:
"221100",138.00,"D","0019/1477","44012075","49938","49938/15043000","Television - 22" Refurbished - Airwave","Supply of Delivery & Collection 1st Unit (1), Delivery & Collection Additions (1), Whitbread Refurb LCD (2)","Airwave Europe Ltd","15/04/2015","2520",""

Desired output :

Code:
"221100",138.00,"D","0019/1477","44012075","49938","49938/15043000","Television  - 22 Refurbished - Airwave","Supply of Delivery & Collection 1st  Unit (1), Delivery & Collection Additions (1), Whitbread Refurb LCD  (2)","Airwave Europe Ltd","15/04/2015","2520",""

I have checked for many threads posted in this site. and tried
Code:
sed 's/\([^",]\)"\([^",]\)/\1\2/' < infile > outfile

Code:
perl -anle 'my @fields = ($_ =~ /(?:^|,)(".*?"|[^,]*?)(?=,|$)/g);foreach my $f(@fields){$f=~s/"//g;$f=sprintf("\"%s\"",$f);}my $line=join(",",@fields);print $line' file

But it didn't work. If the last column of the data is blank. then it is changing for that as well and getting the below output.

Code:
"221100",138.00,"D","0019/1477","44012075","49938","49938/15043000","Television  - 22 Refurbished - Airwave","Supply of Delivery & Collection 1st  Unit (1), Delivery & Collection Additions (1), Whitbread Refurb LCD  (2)","Airwave Europe Ltd","15/04/2015","2520","

Could anyone help me out to fix this issue.

Regards,
Lavanya.

Last edited by rbatte1; 05-11-2015 at 12:45 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

replace value with double quotes of specific coulmn value in csv file

Hi, I am trying to replace a specific column values in a csv file with double quotes. Example: SNO,NAME,ZIPCODE,RANK 1,Robert,74538,12 2,Sam,07564,13 3,Kim, Ed,12345,14 Desired Output: SNO,NAME,ZIPCODE,RANK 1,Robert Ken,74538,12 2,Sam Mik,"07564",13 3,"Kim, Ed",12345,14 I... (3 Replies)
Discussion started by: techmoris
3 Replies

2. Shell Programming and Scripting

Replacing comma with in double quotes in a csv file

Hello, I need to read a csv file and I am trying to replace a comma with a text DSEE?DSEE. Example Input "Chapter","NewTrains, "oldTrains","Delayed",10,"London" "Chapter","Newbuses,oldbuses","On Time",20,"London" Output "Chapter","NewTrainsDSEE?DSEE... (5 Replies)
Discussion started by: venkatvani
5 Replies

3. Shell Programming and Scripting

Replace double double quotes using AWK/SED

Hi, I have data as "01/22/97-"aaaaaaaaaaaaaaaaa""aaa""aabbbbbbbbcccccc""zbcd""dddddddddeeeeeeeeefffffff" I want to remove only the Consequitive double quotes and not the one which occurs single. My O/P must be ... (2 Replies)
Discussion started by: Bhuvaneswari
2 Replies

4. Shell Programming and Scripting

HELP with AWK or SED. Need to replace the commas between double quotes in CSV file

Hello experts, I need to validate a csv file which contains data like this: Sample.csv "ABCD","I",23,0,9,,"23/12/2012","OK","Street,State, 91135",0 "ABCD","I",23,0,9,,"23/12/2012","OK","Street,State, 91135",0 I just need to check if all the records contain exactly the number of... (5 Replies)
Discussion started by: shell_boy23
5 Replies

5. Shell Programming and Scripting

Replace newline character between a double quotes to a space

Hi Guys, I have a file with content as below aj.txt "Iam allfine" abcdef abcd "all is not well" What I'm trying to say is my data has some new line characters in between quoted text. I must get ride of the newline character that comes in between the quoted text. output must be:... (8 Replies)
Discussion started by: ajahuja
8 Replies

6. Shell Programming and Scripting

Issue with Single Quotes and Double Quotes for prompt PS1

Hi, Trying to change the prompt. I have the following code. export PS1=' <${USER}@`hostname -s`>$ ' The hostname is not displayed <abc@`hostname -s`>$ uname -a AIX xyz 1 6 00F736154C00 <adcwl4h@`hostname -s`>$ If I use double quotes, then the hostname is printed properly but... (3 Replies)
Discussion started by: bobbygsk
3 Replies

7. Shell Programming and Scripting

How to delete the commas in a .CSV file that are enclosed in a string with double quotes?

Okay, I would like to delete all the commas in a .CSV file (TEST.CSV) or at least substitute them with empty space, that are enclosed in double quote. Please see the sample file as below: column 1,column 2,column 3,column 4,column 5,column 6,column 7,column 8,column 9,column 10... (8 Replies)
Discussion started by: dhruuv369
8 Replies

8. Shell Programming and Scripting

Replace double quotes with a single quote within a double quoted string

Hi Froum. I have tried in vain to find a solution for this problem - I'm trying to replace any double quotes within a quoted string with a single quote, leaving everything else as is. I have the following data: Before: ... (32 Replies)
Discussion started by: pchang
32 Replies

9. Shell Programming and Scripting

Shell script that should remove unnecessary commas between double quotes in CSV file

i have data as below 123,"paul phiri",paul@yahoo.com,"po.box 23, BT","Eco Bank,Blantyre,Malawi" i need an output to be 123,"paul phiri",paul@yahoo.com,"po.box 23 BT","Eco Bank Blantyre Malawi" (5 Replies)
Discussion started by: mathias23
5 Replies

10. Shell Programming and Scripting

Need shell script to append double quotes for each column in a file

Hi Experts, I am beginner to the shell scripting, My requirement is to append double quotes for each column in a file if double quotes does not exist. Example: "abc"|123|"gh-ch"|23.067 Use code tags, thanks. (10 Replies)
Discussion started by: spidy
10 Replies
User::Identity::Collection::Emails(3pm) 		User Contributed Perl Documentation		   User::Identity::Collection::Emails(3pm)

NAME
User::Identity::Collection::Emails - a collection of email roles INHERITANCE
User::Identity::Collection::Emails is a User::Identity::Collection is a User::Identity::Item SYNOPSIS
DESCRIPTION
The "User::Identity::Collection::Emails" object maintains a set Mail::Identity objects, each describing a role which the user has in e-mail traffic. OVERLOADED
overload: @{} See "OVERLOADED" in User::Identity::Collection overload: stringification See "OVERLOADED" in User::Identity::Collection METHODS
Constructors User::Identity::Collection::Emails->new([NAME], OPTIONS) Option --Defined in --Default description User::Identity::Item undef item_type User::Identity::Collection Mail::Identity name User::Identity::Item 'emails' parent User::Identity::Item undef roles User::Identity::Collection undef . description => STRING . item_type => CLASS . name => STRING . parent => OBJECT . roles => ROLE|ARRAY Attributes $obj->description See "Attributes" in User::Identity::Item $obj->itemType See "Attributes" in User::Identity::Collection $obj->name([NEWNAME]) See "Attributes" in User::Identity::Item $obj->roles See "Attributes" in User::Identity::Collection Collections $obj->add(COLLECTION, ROLE) See "Collections" in User::Identity::Item $obj->addCollection(OBJECT | ([TYPE], OPTIONS)) See "Collections" in User::Identity::Item $obj->collection(NAME) See "Collections" in User::Identity::Item $obj->parent([PARENT]) See "Collections" in User::Identity::Item $obj->removeCollection(OBJECT|NAME) See "Collections" in User::Identity::Item $obj->type User::Identity::Collection::Emails->type See "Collections" in User::Identity::Item $obj->user See "Collections" in User::Identity::Item Maintaining roles $obj->addRole(ROLE| ( [NAME],OPTIONS ) | ARRAY-OF-OPTIONS) See "Maintaining roles" in User::Identity::Collection $obj->removeRole(ROLE|NAME) See "Maintaining roles" in User::Identity::Collection $obj->renameRole(ROLE|OLDNAME, NEWNAME) See "Maintaining roles" in User::Identity::Collection $obj->sorted See "Maintaining roles" in User::Identity::Collection Searching $obj->find(NAME|CODE|undef) See "Searching" in User::Identity::Collection DIAGNOSTICS
Error: $object is not a collection. The first argument is an object, but not of a class which extends User::Identity::Collection. Error: Cannot create a $type to add this to my collection. Some options are specified to create a $type object, which is native to this collection. However, for some reason this failed. Error: Cannot load collection module for $type ($class). Either the specified $type does not exist, or that module named $class returns compilation errors. If the type as specified in the warning is not the name of a package, you specified a nickname which was not defined. Maybe you forgot the 'require' the package which defines the nickname. Error: Cannot rename $name into $newname: already exists Error: Cannot rename $name into $newname: doesn't exist Error: Creation of a collection via $class failed. The $class did compile, but it was not possible to create an object of that class using the options you specified. Error: Don't know what type of collection you want to add. If you add a collection, it must either by a collection object or a list of options which can be used to create a collection object. In the latter case, the type of collection must be specified. Warning: No collection $name The collection with $name does not exist and can not be created. Error: Wrong type of role for $collection: requires a $expect but got a $type Each $collection groups sets of roles of one specific type ($expect). You cannot add objects of a different $type. SEE ALSO
This module is part of User-Identity distribution version 0.93, built on December 24, 2009. Website: http://perl.overmeer.net/userid/ LICENSE
Copyrights 2003,2004,2007-2009 by Mark Overmeer <perl@overmeer.net>. For other contributors see Changes. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html perl v5.10.1 2009-12-24 User::Identity::Collection::Emails(3pm)
All times are GMT -4. The time now is 09:08 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy