Help using Base SAS procedures

Replace strings using prxchange

Accepted Solution Solved
Reply
Contributor
Posts: 27
Accepted Solution

Replace strings using prxchange

SAS users,

I would like to replace company type chracters such as LTD, limited, ltd. etc

So far I have done:

data test3;

set test2;

ocp=prxchange("s/([Pp][Tt][Yy] [Ll][Tt][Dd])|([Ll]imite)|([Ll]t)|([Pp]t)|([Pp][Tt][Yy] [Ll]imite) / /", -1, original_credit_provider);

*if _n_=68;

run;

At the moment, I cannot deal with the ones that ends with a ".". How would you modify the above regular expression paraemter

so that it can perform prxchange for values such as:

ABC Pty. Ltd. => ABC

ABC Pty. Ltd. => ABC

Also, is there something to ensure that this string replace is done from the right end of each string?

Many thanks.

Attachment

Accepted Solutions
Solution
‎06-28-2012 04:00 AM
Frequent Contributor
Posts: 95

Re: Replace strings using prxchange

You may also use "i" option to make search case insensitive.

data x;

length original_credit_provider $32;

input original_credit_provider $1-32;

ocp=prxchange("s/PTY\.? (Limited|Ltd\.?)//i", -1, original_credit_provider);

datalines;

ABC Pty. Ltd.

ABC Pty. Limited

ABC Pty Limited

ABC Pty Ltd.

;

run;

View solution in original post


All Replies
Super User
Posts: 9,676

Re: Replace strings using prxchange

How about it.

data test2;
 input original_credit_provider & $20.;
cards;
ABC Pty. Ltd.
ABC Pty. Ltd.
;
run;
data test3;
set test2;
ocp=prxchange("s/([Pp][Tt][Yy]\.? [Ll][Tt][Dd]\.?)|([Ll]imite)|([Ll]t)|([Pp]t)|([Pp][Tt][Yy] [Ll]imite) / /", -1, original_credit_provider);
run;

Ksharp

Message was edited by: xia keshan

Solution
‎06-28-2012 04:00 AM
Frequent Contributor
Posts: 95

Re: Replace strings using prxchange

You may also use "i" option to make search case insensitive.

data x;

length original_credit_provider $32;

input original_credit_provider $1-32;

ocp=prxchange("s/PTY\.? (Limited|Ltd\.?)//i", -1, original_credit_provider);

datalines;

ABC Pty. Ltd.

ABC Pty. Limited

ABC Pty Limited

ABC Pty Ltd.

;

run;

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 352 views
  • 3 likes
  • 3 in conversation