Rosetta Code/Fix code tags: Difference between revisions

Content added Content deleted
No edit summary
m (→‎{{header|REXX}}: re-aligned first comment, added whitespace. -- ~~~~)
Line 348: Line 348:
=={{header|REXX}}==
=={{header|REXX}}==
Some older REXXes don't have the '''changestr''' bif, so one is include here.
Some older REXXes don't have the '''changestr''' bif, so one is include here.
<lang rexx>/*REXX program fixes (changes) depreciated code tags with newer tags. */
<lang rexx>/*REXX program fixes (changes) depreciated code tags with newer tags.*/

old.='' /*define a default value for OLD.*/
old.='' /*define a default value for OLD.*/


old.1='%s' ; new.1='lang %s'
old.1='<%s>' ; new.1='<lang %s>'
old.2='/%s' ; new.2='/lang'
old.2='</%s>' ; new.2='</lang>'
old.3='code %s' ; new.3='lang %s'
old.3='<code %s>' ; new.3='<lang %s>'
old.4='/code' ; new.4='/lang'
old.4='</code>' ; new.4='</lang>'


ifid='Wikisource.txt' /* input file identifier. */
ifid='Wikisource.txt' /* input file identifier. */
Line 363: Line 364:


do k=1 while old.j\=='' /*change old --> new until done. */
do k=1 while old.j\=='' /*change old --> new until done. */
_=changestr('<'new.k">",_,'<'old.k">") /*change the text.*/
_=changestr(new.k,_,old.k) /*let REXX do the heavy lifting. */
end
end


call lineout ofid,_ /*write out the re-formatted rec.*/
call lineout ofid,_ /*write out the re-formatted rec.*/
end
end
exit /*stick a fork in it, we're done.*/

/*───────────────────────────CHANGESTR subroutine───────────────────────*/
/*───────────────────────────CHANGESTR subroutine───────────────────────*/
changestr: procedure; parse arg o,h,n; r=; w=length(o); if w==0 then return n||h
changestr: procedure; parse arg o,h,n; r=; w=length(o); if w==0 then return n||h