Removing leading and trailing spaces only in PERL


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Removing leading and trailing spaces only in PERL
# 1  
Old 04-04-2009
Removing leading and trailing spaces only in PERL

Hi All,

I have a file with the following contents with multiple lines

Code:
172445957|   000005911|8| 400 Peninsula Ave.#1551  | And,K |935172445957|000005911
607573888  |000098536  | 2|Ane, B |J |Ane |1868 |19861206|20090106|20071001

I want to trim the "leading and trailing spaces only" from each of the field of each line in perl.

For example: I want to remove leading space from " 000005911" and leading and trailing spaces from " 400 Peninsula Ave.#1551 " within the | delimter, not in between spaces of 400 and Peninsula and Ave.

I tried the following code
Code:
$data =~ s/^\s/+/;
$data =~ s/\s+$//;

It removes all the spaces from each field of the line.i.e. it gives me the result like for a specific field

from
" 400 Peninsula Ave.#1551 "

to

"400PeninsulaAve.#1551"

But I want like

"400 Peninsula Ave.#1551" no leading and trailing spaces

I just the put quotes for explanation.

Please help me if I can do it perl.

Appreciate your help.

Regards

-Kumar

Last edited by Yogesh Sawant; 04-04-2009 at 04:39 PM.. Reason: added code tags
# 2  
Old 04-04-2009
Option 1:
Code:
$data =~ s/\|\s+/g;
$data =~ s/\s+\|/g;

Option 2:
Code:
$data = join '|', map { s/\s+$/; s/^\s+/; } split /|/, $data;

# 3  
Old 04-04-2009
option 2 might need a small correction:

Code:
 split /|/, $data;

the pipe should be escaped:

Code:
 split /\|/, $data;

both are good, I prefer option 1 myself.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to remove leading and trailing spaces for variable in shell script?

Hi I have variable named tablename. The value to tablename variable has leading and trailing white spaces. How to remove the leading and training white spaces and write the value of the tablename without space to a file using shell script. ( for e.g. tablename= yyy ) INPUT ... (10 Replies)
Discussion started by: pottic
10 Replies

2. Shell Programming and Scripting

Remove leading and trailing spaces from a file

Hi, I am trying to remove leading and trailing spaces from a file using awk but somehow I have not been able to do it. Here is the data that I want to trim. 07/12/2017 15:55:00 |entinfdev |AD ping Time ms | .474| 1.41| .581|green |flat... (9 Replies)
Discussion started by: svajhala
9 Replies

3. UNIX for Dummies Questions & Answers

Need help removing leading spaces from one field in comma seperated file

Using awk or sed, I'd like to remove leading spaces after a comma and before a right justified number in field 6. Sounds simple but I can't find a solution. Each field's formatting must stay intact. Input: 40,123456-02,160,05/24/2012,02/13/1977, 10699.15,0 Output:... (5 Replies)
Discussion started by: Scottie1954
5 Replies

4. Shell Programming and Scripting

Removing leading spaces from the variable value.

Hi All, I am trying to replace the value of a xml tag with a new one. But, the existing value in the xml contain leading spaces and I tried to remove that with different sed commands but all in vain. For replacing the value I wrote the command in BOLD letters below: bash-3.00$... (3 Replies)
Discussion started by: khedu
3 Replies

5. Shell Programming and Scripting

remove trailing and leading spaces using tr command

Dear All, can you please advice how do i remove trailing and leading spaces from a pipe-delimited file using "tr" command the below cmd, i tried removed all spaces tr -d ' '<s1.txt>s2.txt1 Many thx Suresh (5 Replies)
Discussion started by: sureshg_sampat
5 Replies

6. Shell Programming and Scripting

Removing trailing spaces from delimited files

Hi All I have a file of the following format (delimited by |) this is field 1 | field 2 (lots of blank spaces) | field 3 (lots of blank space) | field 1 | more text (lots of blank spaces) | dhjdsk | Is there a way I can remove... (6 Replies)
Discussion started by: djkane
6 Replies

7. UNIX for Dummies Questions & Answers

Removing leading and trailing spaces of data between the tags in xml.

I am having xml document as below. <transactionid> 00 </transactionid> <tracknumber> 0 </tracknumber> <key> N/A </key> But the data contains leading and trailing spaces between the tags. Please let me know how can i remove these leading and trailing spaces between the tags.... (2 Replies)
Discussion started by: jhmr7
2 Replies

8. Shell Programming and Scripting

Strip leading and trailing spaces only in a shell variable with embedded spaces

I am trying to strip all leading and trailing spaces of a shell variable using either awk or sed or any other utility, however unscuccessful and need your help. echo $SH_VAR | command_line Syntax. The SH_VAR contains embedded spaces which needs to be preserved. I need only for the leading and... (6 Replies)
Discussion started by: jerardfjay
6 Replies

9. Shell Programming and Scripting

Leading and Trailing Spaces

Hi, how to i remove leading and trailing spaces from a line? the spaces can be behind or in front of any field or line example of a line in the input data: Amy Reds , 100 , /bin/sh how to i get it to be: Amy Read,100,/bin/sh i saw something on this on the Man pages for AWK... (7 Replies)
Discussion started by: sleepster
7 Replies

10. UNIX for Dummies Questions & Answers

removing trailing spaces of a particular column in a file

Hi, I am currently confused. Suppose I have a file something like the one below. 4299|raj Telecommunications|12||||| 4302|anjali International Ltd.|86|ritchie||dong|(000)2890 9993 |(222)4881 3689 4305|フィデュシアリ・ト-スト・インター...ショ...ル投資顧問株式会社 |112||||01-9211-1931 |08-3677-1985 Now... (2 Replies)
Discussion started by: rooh
2 Replies
Login or Register to Ask a Question