Visit Our UNIX and Linux User Community


Handling blank spaces


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Handling blank spaces
# 1  
Old 08-04-2009
Handling blank spaces

Hi,

I am trying to replace a specific column values in a csv file with double quotes when I am find embedded spaces with in the fields.

Example:

SNO,NAME,ZIPCODE,RANK,SEX,ADDRESS
1,Robert,74538,12,34, M,Robert Street, NY
2,Sam,07564,13,M,12 Main Ave, CA
3,Kim, Ed,12345,14,M,123D , MN

Desired Output:

SNO,NAME,ZIPCODE,RANK,SEX,ADDRESS
1,Robert Ken,74538,12,"34, Robert Street, NY"
2,Sam Mik,"07564",13,"12 Main Ave, CA"
3,"Kim, Ed",12345,14,"123D , MN"

As per my requirement, I was able to replace the ZIPCODE value with double quotes when I find a leading zeros for the zipcode. Also, I would like to replace the name in double quotes when I find a embedded comma with in the NAME.

Can someone tell me how to handle the embedded spaces(spaces can be one or many) and comma with in a field value as per the above example in the ADDRESS field.

following code was able to handly ZIPCODE and NAME

sed -e 's/,\(0[0-9]*\)/,\"\1\"/g' -e 's/,\([A-Za-z]*, [A-Za-z]*\),/,\"\1\",/g' tempfile.csv > file.csv

Thanks Smilie-

---------- Post updated at 02:13 PM ---------- Previous update was at 12:07 PM ----------

I got it...

sed -e 's/,\(0[0-9]*\)/,\"\1\"/g' -e 's/,\([ 0-9A-Za-z]*, [ 0-9A-Za-z]*\),/,\"\1\",/g' -e 's/,\([ 0-9A-Za-z]*, [ 0-9A-Za-z]*\),/,\"\1\",/g' file.csv
> tempfile.csv

Thanks!!

Last edited by techmoris; 08-04-2009 at 01:13 PM..
# 2  
Old 08-05-2009
You input and your output dont match.
Example: There is no "Kim" in input while it is present in output.

Code:
 
sed 's/^\([[:digit:]]\{1,\}\),\([[:alpha:]][[:alpha:], ]*\),\([[:digit:]]\{5\}\),\([[:alnum:]]\{1,2\}\),\(.*\)$/\1,\"\2\",\3,"\5"/' comaquotes.txt


Previous Thread | Next Thread
Test Your Knowledge in Computers #993
Difficulty: Medium
Illumination is a free and open-source Unix operating system based on OpenSolaris.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Handling filenames with spaces

I'm trying to handle some files with spaces in their name using "" or \ . Like "file 1" or file\ 1. My current confusion can be expressed by the following shell script: #!/bin/bash touch "file 1" "file 2" echo -n "ls: " ; ls echo --- for file in "file 1" "file 2" ; do echo $file... (9 Replies)
Discussion started by: Ralph
9 Replies

2. UNIX for Advanced & Expert Users

Delete blank spaces and blank lines in a file

Hi Gurus, Somebody can say me how to delete blank spaces and blank lines in a file unix, please. Thank you for advanced. (10 Replies)
Discussion started by: systemoper
10 Replies

3. UNIX for Advanced & Expert Users

File Processing: Handling spaces in a line

Hi All, Iam trying to get a file processed and some lines have spaces...the below is not working Want to remove empty line Want to remove lines that start with # Avoid line with substring WHOA When trying to get the substring from the var also Iam having trouble file is like VAR=VALUE,... (13 Replies)
Discussion started by: baanprog
13 Replies

4. Shell Programming and Scripting

Remove blank spaces

Gents, Please can you help me.. to remove blank spaces :) Input ABSOLUTE , ,FALSE ,1035 ,28 ,669 ,1817.0 ,CORREL BEFORE ,1 ABSOLUTE , ,FALSE ,1035 ,28 ,686 ,1817.0 ,CORREL BEFORE ,1 ABSOLUTE , ,FALSE ,1035 ,28 ,670 ,1819.0 ,CORREL BEFORE ,1 ABSOLUTE , ,FALSE ... (4 Replies)
Discussion started by: jiam912
4 Replies

5. Shell Programming and Scripting

Handling directory with spaces in for loops

Hi everyone, I have been a big fan here since a couple years (since I started being an admin ...) and finally decided to become a member and help ppl and perhaps being helped Now I have a problem that might interest some of the gurus. I am abig fan of what I call "one liners". I am trying... (2 Replies)
Discussion started by: plmachiavel
2 Replies

6. Shell Programming and Scripting

Problems with Blank Spaces

Hi to all. How can I pass to the stat command a file path with blank spaces? And another question, if I use stat command like this: stat / -name "*.sh" -user $user_name -exec stat -c %n%x {} \; How can I get the result with a ":" into the name of the file and the time of the last... (4 Replies)
Discussion started by: daniel.gbaena
4 Replies

7. UNIX for Dummies Questions & Answers

handling white spaces with getopt

Hi I'm trying to ensure that I have catered for all situations with my getopt cases. One other situation I want to cover is should the user enter the script without any preceding arguments eg: ./script_eg I need the script to the direct the user to the helpfile I have tried... (3 Replies)
Discussion started by: ladyAnne
3 Replies

8. Shell Programming and Scripting

Removing blank spaces, tab spaces from file

Hello All, I am trying to remove all tabspaces and all blankspaces from my file using sed & awk, but not getting proper code. Please help me out. My file is like this (<b> means one blank space, <t> means one tab space)- $ cat file NARESH<b><b><b>KUMAR<t><t>PRADHAN... (3 Replies)
Discussion started by: NARESH1302
3 Replies

9. Shell Programming and Scripting

blank spaces getting deleted

I have to filter out data from a file based on the value of first three characters of each record I have used the following logic FIN=$LOC/TEST2.TXT FEEDFILE=$LOC/TEST1.TXT while read FDROW do FEEDROW=$FDROW; DTYPE=`echo $FEEDROW |cut -c 1-3` if ; then echo $FEEDROW >> $FIN... (5 Replies)
Discussion started by: gander_ss
5 Replies

10. Shell Programming and Scripting

handling spaces in unix

I am testing a ksh script for email. In the script I receive several parameters. One of them is a subject. The subject may contain spaces. Ex. Test this. When I am running the script on telnet to test, how should the syntax at the command line be written. I have this: ksh ResendE.sh '001111'... (2 Replies)
Discussion started by: supercbw
2 Replies

Featured Tech Videos