The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Dummies Questions & Answers
Google UNIX.COM


UNIX for Dummies Questions & Answers If you're not sure where to post a UNIX or Linux question, post it here. All UNIX and Linux newbies welcome !!

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
search and replace a.suryakumar Shell Programming and Scripting 1 04-28-2008 08:30 AM
Perl: Search for string on line then search and replace text Crypto Shell Programming and Scripting 4 01-04-2008 07:24 AM
search and replace dannyd UNIX for Dummies Questions & Answers 18 04-17-2007 04:42 PM
sed search and replace d__browne UNIX for Dummies Questions & Answers 7 04-26-2006 06:46 AM
search and Replace mukeshannamalai UNIX for Advanced & Expert Users 4 09-14-2001 03:21 AM

Reply
 
Submit Tools LinkBack Thread Tools Search this Thread Display Modes
  #1  
Old 08-12-2008
Registered User
 

Join Date: Aug 2008
Posts: 2
vi search/replace using a set

Hi,

I'm trying to do a global search/replace in vi using a set - I want to find every occurance of a carriage return followed by a character and replace it with a space. I've tried the following:

:%s/\n[a-z][A-Z]/ [a-z][A-Z]/g

It does the search ok, but it replaces the characters with the literal value "[a-z][A-Z]"

How do i escape the replace condition to use the set?

Thanks a million!

-Hud
Reply With Quote
Forum Sponsor
  #2  
Old 08-12-2008
Registered User
 

Join Date: Jul 2008
Location: Texas
Posts: 60
One point: your search string, as you have it, would find \n followed by a lowercase letter followed by an uppercase letter. To match any single character, whether upper- or lowercase, use only a single pair of square brackets.

As for what you want to do, try the following which tagged the "character" subexpression:

Code:
 
:%s/\n\([a-zA-Z]\)/ \1/g
Reply With Quote
  #3  
Old 08-13-2008
Registered User
 

Join Date: Aug 2008
Posts: 2
You are my hero

You rule!

That totally worked!
I did end up changing it to this though to expand it even more:
:%s/\n\([^0-9]\)/ \1/g

Thanks a million!

-Hud
Reply With Quote
Google The UNIX and Linux Forums
Reply

Tags
vim

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes




All times are GMT -7. The time now is 09:44 PM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008. All Rights Reserved.Ad Management by RedTyger Visit The Complex Event Processing Blog

Content Relevant URLs by vBSEO 3.2.0