<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Separating strings in a sentence into separate columns in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851139#M336376</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a SAS dataset containing addresses like the following example:&lt;/P&gt;&lt;TABLE border="1" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;STRONG&gt;addr 1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 2&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 3&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20 kelly dr apt 2 england home&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16 hawk lane fl 2 bertha senior living&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;senior living&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3 india road&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;45 virginia street apt 6 england home&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;holden st unit 3&lt;/TD&gt;&lt;TD&gt;unit 3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need all the apt/unit numbers in the 2nd column and any additional level of address in the 3rd column like the following:&lt;/P&gt;&lt;P&gt;Is there any way to do this? Thank you!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;STRONG&gt;addr 1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 2&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 3&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20 kelly dr&lt;/TD&gt;&lt;TD&gt;apt 2&lt;/TD&gt;&lt;TD&gt;england home&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16 hawk lane&lt;/TD&gt;&lt;TD&gt;fl 2&lt;/TD&gt;&lt;TD&gt;bertha senior living&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3 india road&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;45 virginia street&lt;/TD&gt;&lt;TD&gt;apt 6&lt;/TD&gt;&lt;TD&gt;england home&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;holden st&lt;/TD&gt;&lt;TD&gt;unit 3&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
    <pubDate>Mon, 26 Dec 2022 14:40:18 GMT</pubDate>
    <dc:creator>Gayatrikunchay</dc:creator>
    <dc:date>2022-12-26T14:40:18Z</dc:date>
    <item>
      <title>Separating strings in a sentence into separate columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851139#M336376</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a SAS dataset containing addresses like the following example:&lt;/P&gt;&lt;TABLE border="1" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;STRONG&gt;addr 1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 2&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 3&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20 kelly dr apt 2 england home&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16 hawk lane fl 2 bertha senior living&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;senior living&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3 india road&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;45 virginia street apt 6 england home&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;holden st unit 3&lt;/TD&gt;&lt;TD&gt;unit 3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need all the apt/unit numbers in the 2nd column and any additional level of address in the 3rd column like the following:&lt;/P&gt;&lt;P&gt;Is there any way to do this? Thank you!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;STRONG&gt;addr 1&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 2&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;addr 3&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;20 kelly dr&lt;/TD&gt;&lt;TD&gt;apt 2&lt;/TD&gt;&lt;TD&gt;england home&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;16 hawk lane&lt;/TD&gt;&lt;TD&gt;fl 2&lt;/TD&gt;&lt;TD&gt;bertha senior living&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3 india road&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;45 virginia street&lt;/TD&gt;&lt;TD&gt;apt 6&lt;/TD&gt;&lt;TD&gt;england home&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;holden st&lt;/TD&gt;&lt;TD&gt;unit 3&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Mon, 26 Dec 2022 14:40:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851139#M336376</guid>
      <dc:creator>Gayatrikunchay</dc:creator>
      <dc:date>2022-12-26T14:40:18Z</dc:date>
    </item>
    <item>
      <title>Re: Separating strings in a sentence into separate columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851151#M336383</link>
      <description>&lt;P&gt;Seems like a difficult task. The difficult task is to create a comprehensive set of rules that will separate this data the way you want. Once you have those rules, the coding isn't that hard.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For example, are the first three "words" &lt;STRONG&gt;always&lt;/STRONG&gt; the address 1? What if someone lives at 523 West Main Street? That's four "words" for address 1. Is that possible? If so, how would you know where the address 1 ends?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Since you know the data, and we do not, you need to create the rules to do this and then inform us of those rules.&lt;/P&gt;</description>
      <pubDate>Mon, 26 Dec 2022 17:04:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851151#M336383</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-12-26T17:04:08Z</dc:date>
    </item>
    <item>
      <title>Re: Separating strings in a sentence into separate columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851158#M336387</link>
      <description>&lt;P&gt;How did all of the address data end up in ADDR1 to begin with? Is that how it really is in the data source or what happened after importing into SAS? If it is the latter then fix the import. As &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/10892"&gt;@PaigeMiller&lt;/a&gt; says, address parsing is hard. There is specialist functionality in SAS Data Quality to handle this but I doubt you would have this product.available to you. In any case these don't look like standard street addresses.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;How many addresses do you have? If it is only a few thousand then a custom solution might work.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 26 Dec 2022 20:56:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851158#M336387</guid>
      <dc:creator>SASKiwi</dc:creator>
      <dc:date>2022-12-26T20:56:57Z</dc:date>
    </item>
    <item>
      <title>Re: Separating strings in a sentence into separate columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851200#M336408</link>
      <description>&lt;P&gt;I think you'd better post your real data to explain your question.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input have $80.;
cards;	
20 kelly dr apt 2 england home	 	 
16 hawk lane fl 2 bertha senior living	 	
3 india road	 	 
45 virginia street apt 6 england home	 	 
holden st unit 3
;

data want;
 set have;
 p=prxmatch('/\w+\s+\d+/io',have);
 if p then do;
  addr1=substr(have,1,p-1);
  temp=substr(have,p);
  call scan(temp,2,p2,l2,' ');
  addr2=substr(temp,1,p2+l2);
  addr3=substr(temp,p2+l2);
 end;
 else   addr1=have;
 keep addr1 addr2 addr3;
 run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 27 Dec 2022 09:29:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Separating-strings-in-a-sentence-into-separate-columns/m-p/851200#M336408</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2022-12-27T09:29:13Z</dc:date>
    </item>
  </channel>
</rss>

