<?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 Re: How to use perl regular expression in SAS in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-to-use-perl-regular-expression-in-SAS/m-p/88789#M18888</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;sorry ,I made a mistake when writing the desired sas data set but i have what i needed.&lt;/P&gt;&lt;P&gt;Thanks for your help.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 20 Sep 2013 17:13:04 GMT</pubDate>
    <dc:creator>zqkal</dc:creator>
    <dc:date>2013-09-20T17:13:04Z</dc:date>
    <item>
      <title>How to use perl regular expression in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-use-perl-regular-expression-in-SAS/m-p/88787#M18886</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Perl regular expression in SAS. &lt;/P&gt;&lt;P&gt;Does anyone knows how I could achieve this using perl regular expressions in SAS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have this SAS dataset.&lt;/P&gt;&lt;P&gt;DATA given;&lt;/P&gt;&lt;P&gt; input poolno $ name $;&lt;/P&gt;&lt;P&gt;&amp;nbsp; datalines;&lt;/P&gt;&lt;P&gt;&amp;nbsp; 00581591 FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; MSR0581591 GN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0581591 FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; A581591A58591 GN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0581591A FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0581591BB GN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 05815910 FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; '0581591 GN&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to apply below rules using SAS regular expressions.&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;IF LENGTH(POOLNO) &amp;gt; 6&amp;nbsp; then do the following.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;OL style="list-style-type: lower-alpha;"&gt;&lt;LI&gt;Remove all leading zeros&lt;/LI&gt;&lt;LI&gt;Remove 'MRS0' prefix if it exist&lt;/LI&gt;&lt;LI&gt;If a space exists, only keep the portion of the string prior to the space and not including that space Example: ABC 123 -&amp;gt; ABC&lt;/LI&gt;&lt;LI&gt;If the value exists twice, keep only one of them.&amp;nbsp; Example: ABC123ABC123 -&amp;gt; ABC123&lt;/LI&gt;&lt;LI&gt;If the 7th nonzero character is alphabetical then only keep the 6 nonzero characters prior&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt; # to that alphabetical character and not including it. Example: 123456A -&amp;gt; 123456&lt;/P&gt;&lt;OL style="list-style-type: lower-alpha;"&gt;&lt;LI&gt;Remove two trailing characters if they exist Example: 123456BB -&amp;gt; 123456&lt;/LI&gt;&lt;LI&gt;Remove trailing zeroes after the sixth character Example: 12345600 -&amp;gt; 123456&lt;/LI&gt;&lt;LI&gt;i. Remove leading '&amp;nbsp; Example: '123456 -&amp;gt; 123456&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is the desired sas dataset:&lt;/P&gt;&lt;P&gt;0581591 FN&lt;/P&gt;&lt;P&gt;585191&amp;nbsp; GN&lt;/P&gt;&lt;P&gt;0581591 FN&lt;/P&gt;&lt;P&gt;A581591 GN&lt;/P&gt;&lt;P&gt;0581591 FN&lt;/P&gt;&lt;P&gt;0581591 GN&lt;/P&gt;&lt;P&gt;0581591 FN&lt;/P&gt;&lt;P&gt;0581591 GN&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance for you kind response.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Sep 2013 22:21:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-use-perl-regular-expression-in-SAS/m-p/88787#M18886</guid>
      <dc:creator>zqkal</dc:creator>
      <dc:date>2013-09-19T22:21:12Z</dc:date>
    </item>
    <item>
      <title>Re: How to use perl regular expression in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-use-perl-regular-expression-in-SAS/m-p/88788#M18887</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;DATA given;&lt;/P&gt;&lt;P&gt;input ( poolno name ) (: $20.);&lt;/P&gt;&lt;P&gt;newpoolno=prxchange('s#([''\b]|MSR0)?(\w\d{4,5}[1-9])[0\w]{0,}\b#$2#',-1,prxchange('s#^00#0#',1,poolno));&lt;/P&gt;&lt;P&gt;&amp;nbsp; datalines;&lt;/P&gt;&lt;P&gt;&amp;nbsp; 00581591 FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; MSR0581591 GN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0581591 FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; A581591A58591 GN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0581591A FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0581591BB GN&lt;/P&gt;&lt;P&gt;&amp;nbsp; 05815910 FN&lt;/P&gt;&lt;P&gt;&amp;nbsp; '0581591 GN&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;An additional note, taken in priority, your rules and results do not mesh perfectly.&amp;nbsp; I coded to match the results provided rather than then rules you listed.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1"&gt;poolno&lt;/TD&gt;&lt;TD colspan="1"&gt;name&lt;/TD&gt;&lt;TD colspan="1"&gt;newpoolno&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00581591&lt;/TD&gt;&lt;TD&gt;FN&lt;/TD&gt;&lt;TD&gt;0581591&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;MSR0581591&lt;/TD&gt;&lt;TD&gt;GN&lt;/TD&gt;&lt;TD&gt;581591&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0581591&lt;/TD&gt;&lt;TD&gt;FN&lt;/TD&gt;&lt;TD&gt;0581591&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;A581591A58591&lt;/TD&gt;&lt;TD&gt;GN&lt;/TD&gt;&lt;TD&gt;A581591&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0581591A&lt;/TD&gt;&lt;TD&gt;FN&lt;/TD&gt;&lt;TD&gt;0581591&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;0581591BB&lt;/TD&gt;&lt;TD&gt;GN&lt;/TD&gt;&lt;TD&gt;0581591&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;05815910&lt;/TD&gt;&lt;TD&gt;FN&lt;/TD&gt;&lt;TD&gt;0581591&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;'0581591&lt;/TD&gt;&lt;TD&gt;GN&lt;/TD&gt;&lt;TD&gt;0581591&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Sep 2013 16:04:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-use-perl-regular-expression-in-SAS/m-p/88788#M18887</guid>
      <dc:creator>FriedEgg</dc:creator>
      <dc:date>2013-09-20T16:04:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to use perl regular expression in SAS</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-use-perl-regular-expression-in-SAS/m-p/88789#M18888</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;sorry ,I made a mistake when writing the desired sas data set but i have what i needed.&lt;/P&gt;&lt;P&gt;Thanks for your help.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Sep 2013 17:13:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-use-perl-regular-expression-in-SAS/m-p/88789#M18888</guid>
      <dc:creator>zqkal</dc:creator>
      <dc:date>2013-09-20T17:13:04Z</dc:date>
    </item>
  </channel>
</rss>

