BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
cliff
Calcite | Level 5

Hello,

I have a variable - full names, and I want to separate all names (last, middle, first).

The variable is usually like Dan I Cooper. However some persons' names include a nick name and their names are like Johnson (John) E Allen. So I want to have a function to tell me which full names include a nickname within (). My solution is to use : If ANYPUNCT(fullname)>0 then nick_name=scan(fullname,2).

But now I find out a new issue, some full names are like Jeff M O'Hagan. With an apostrophe, the anypunct(fullname) is also greater than 0.

So is there a function I can just search parentheses within a string?

Thank you!

P.S. of course these names are not real names.

Cliff

1 ACCEPTED SOLUTION

Accepted Solutions
Reeza
Super User

FIND and INDEX functions.

View solution in original post

2 REPLIES 2
Reeza
Super User

FIND and INDEX functions.

cliff
Calcite | Level 5

Thanks! I just find(fullname,'(') and filter out those nicknames.

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 2 replies
  • 780 views
  • 0 likes
  • 2 in conversation