Markus Weisner
2012-Mar-28 19:32 UTC
[R] how to match exact phrase using gsub (or similar function)
trying to switch out addresses that have double directions, such as the following example: a = "S S Main St & Interstate 95" a = gsub(pattern="S S ", replacement="S ", a) … the problem is that I don't want to affect instances where this might be a correct address such as the following: "3421 BIGS St" what I want to say is switch out only if this is either of the following situations [beginning of char]S S" " S S " "S S[end of char] Is there anyway of making gsub or a similar function make the replacements I want? Thanks in advance for your help. ~Markus [[alternative HTML version deleted]]
Justin Haynes
2012-Mar-28 20:24 UTC
[R] how to match exact phrase using gsub (or similar function)
In most regexs the carrot( ^ ) signifies the start of a line and the dollar sign ( $ ) signifies the end. gsub('^S S', 'S', a) gsub('^S S', 'S', '3421 BIGS St') you can use logical or inside your pattern too: gsub('^S S|S S$| S S ', 'S', a) the " S S " condition is difficult. gsub('^S S|S S$| S S ', 'S', 'foo S S bar') gives the wrong output. as does: gsub('^S S | S S$| S S ', ' S ', 'foo S S bar') gsub('^S S | S S$| S S ', ' S ', a) so you might have to catch that with a second gsub. gsub(' S S ', ' S ', 'foo S S bar') On Wed, Mar 28, 2012 at 12:32 PM, Markus Weisner <r at themarkus.com> wrote:> trying to switch out addresses that have double directions, such as the > following example: > > a = "S S Main St & Interstate 95" > > a = gsub(pattern="S S ", replacement="S ", a) > > > ? the problem is that I don't want to affect instances where this might be > a correct address such as the following: > > > "3421 BIGS St" > > > what I want to say is switch out only if this is either of the following > situations > > > [beginning of char]S S" > > " S S " > > "S S[end of char] > > > Is there anyway of making gsub or a similar function make the replacements > I want? ?Thanks in advance for your help. > > > ~Markus > > ? ? ? ?[[alternative HTML version deleted]] > > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >