<?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: Nth letter Capitalized in  a string in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885974#M350105</link>
    <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data fl;
set sashelp.class;
substr(name,2,1)=upcase(substr(name,2,1)); 
substr(name,length(name),1)=upcase(substr(name,length(name),1));
proc print noobs;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Thanks Tom&amp;nbsp;&lt;/P&gt;
&lt;P&gt;for Your smart solutions&lt;/P&gt;</description>
    <pubDate>Sun, 23 Jul 2023 05:13:08 GMT</pubDate>
    <dc:creator>BrahmanandaRao</dc:creator>
    <dc:date>2023-07-23T05:13:08Z</dc:date>
    <item>
      <title>Nth letter Capitalized in  a string</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885934#M350085</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/* Using PROC SQL */
proc sql;
  
  select 
         substr(Name, 1, 1) || propcase(substr(Name, 2, 1)) || substr(Name, 3) as NewVariable
  from sashelp.class;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;how to capitalized 2nd letter using array and do loop in datastep method&lt;/P&gt;</description>
      <pubDate>Sat, 22 Jul 2023 12:20:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885934#M350085</guid>
      <dc:creator>BrahmanandaRao</dc:creator>
      <dc:date>2023-07-22T12:20:52Z</dc:date>
    </item>
    <item>
      <title>Re: Nth letter Capitalized in  a string</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885936#M350086</link>
      <description>&lt;P&gt;Not sure why you would use a loop (or why you are using PROPCASE() instead of UPCASE()).&lt;/P&gt;
&lt;P&gt;Just replace the 2 letter with its uppercase version.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
  set sashelp.class;
  substr(name,2,1)=upcase(substr(name,2,1));
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;The only reason to use an ARRAY would be if there were multiple variables you wanted to do the same operation on.&amp;nbsp; &amp;nbsp;In that case watch out for variables that do not have room for a second letter.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
  set sashelp.class;
  array c _character_;
  do over c;
    if vlength(c) &amp;gt; 1 then substr(c,2,1)=upcase(substr(c,2,1));
  end;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;If you don't like using features SAS is trying to disavow (This tape will self-destruct in 5 seconds...) then introduce an index variable to the DO loop and the array references.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
  set sashelp.class;
  array c _character_;
  do index=1 to dim(c);
    if vlength(c[index]) &amp;gt; 1 then substr(c[index],2,1)=upcase(substr(c[index],2,1));
  end;
  drop index;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 22 Jul 2023 13:08:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885936#M350086</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2023-07-22T13:08:49Z</dc:date>
    </item>
    <item>
      <title>Re: Nth letter Capitalized in  a string</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885971#M350103</link>
      <description>&lt;P&gt;Hi Tom,&lt;/P&gt;
&lt;P&gt;Thank you very much your different solutions&lt;/P&gt;
&lt;P&gt;suppose i want to capitalized 2nd and last letters how can solve&amp;nbsp; substr not working for last letter&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data;
set sashelp.class;
substr(name,2,1)=upcase(substr(name,2,1)); 
substr(name,-1,1)=upcase(substr(name,-1,1));
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Sun, 23 Jul 2023 04:37:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885971#M350103</guid>
      <dc:creator>BrahmanandaRao</dc:creator>
      <dc:date>2023-07-23T04:37:36Z</dc:date>
    </item>
    <item>
      <title>Re: Nth letter Capitalized in  a string</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885973#M350104</link>
      <description>&lt;P&gt;SUBSTR() works fine for the last character.&amp;nbsp; You just can't used negative positions as that has no meaning.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;substr(name,length(name),1)=upcase(substr(name,length(name),1));&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Sun, 23 Jul 2023 05:00:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885973#M350104</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2023-07-23T05:00:38Z</dc:date>
    </item>
    <item>
      <title>Re: Nth letter Capitalized in  a string</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885974#M350105</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data fl;
set sashelp.class;
substr(name,2,1)=upcase(substr(name,2,1)); 
substr(name,length(name),1)=upcase(substr(name,length(name),1));
proc print noobs;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Thanks Tom&amp;nbsp;&lt;/P&gt;
&lt;P&gt;for Your smart solutions&lt;/P&gt;</description>
      <pubDate>Sun, 23 Jul 2023 05:13:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885974#M350105</guid>
      <dc:creator>BrahmanandaRao</dc:creator>
      <dc:date>2023-07-23T05:13:08Z</dc:date>
    </item>
    <item>
      <title>Re: Nth letter Capitalized in  a string</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885984#M350106</link>
      <description>&lt;P&gt;Just for fun adding a RegEx option. It also covers your later requirement to uppercase the last character in the string.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data test;
  length source target $5;
  do source=' ','a','aa','aaa','aaaa','aaaaa';
    target=prxchange('s/^(.)(.)(.*?)(.?)$/$1\u$2$3\u$4/oi',1,strip(source));
    output;
  end;
run;
proc print data=test;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Patrick_0-1690092124119.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/86037iE6C94947604942ED/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Patrick_0-1690092124119.png" alt="Patrick_0-1690092124119.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 23 Jul 2023 06:03:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Nth-letter-Capitalized-in-a-string/m-p/885984#M350106</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2023-07-23T06:03:15Z</dc:date>
    </item>
  </channel>
</rss>

