September 2017 Update
This commit is contained in:
parent
bba7bfd280
commit
ba8067c3b7
14570 changed files with 153136 additions and 63871 deletions
|
|
@ -1,38 +0,0 @@
|
|||
/*REXX program to convert CSV ───> HTML table representing the CSV data.*/
|
||||
/*REXX program to convert CSV ───> HTML table representing the CSV data.*/
|
||||
|
||||
arg header_ . /*see if the user wants a header.*/
|
||||
wantsHdr= (header_=='HEADER') /*arg (low/upp/mix case)=HEADER ?*/
|
||||
|
||||
iFID='CSV_HTML.TXT' /*the input fileID. */
|
||||
if wantsHdr then oFID='OUTPUTH.HTML' /*output fileID with header, */
|
||||
else oFID='OUTPUT.HTML' /* " " without header. */
|
||||
|
||||
do rows=0 while lines(iFID)\==0 /*read the rows from a (txt) file*/
|
||||
row.rows=strip(linein(iFID))
|
||||
end /*rows*/
|
||||
|
||||
convFrom= '& < > "' /*special characters to convert. */
|
||||
convTo = '& < > "' /*what they are converted into. */
|
||||
|
||||
call write ,'<html>'
|
||||
call write ,'<table border=4 cellpadding=9 cellspacing=1>'
|
||||
|
||||
do j=0 for rows; call write 5,'<tr>'
|
||||
tx='td'
|
||||
if wantsHdr & j==0 then tx='th'
|
||||
|
||||
do while row.j\==''; parse var row.j yyy ',' row.j
|
||||
do k=1 for words(convFrom)
|
||||
yyy=changestr(word(convFrom,k),yyy,word(convTo,k))
|
||||
end /*k*/
|
||||
call write 10,'<'tx">"yyy'</'tx">"
|
||||
end /*forever*/
|
||||
end /*j*/
|
||||
|
||||
call write 5,'<tr>'
|
||||
call write ,'</table>'
|
||||
call write ,'</html>'
|
||||
exit /*stick a fork in it, we're done.*/
|
||||
/*──────────────────────────────────WRITE subroutine────────────────────*/
|
||||
write: call lineout oFID,left('',0||arg(1))arg(2); return
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
/*╔══════════════════════════════╗ CHANGESTR ╔═════════════════════════╗
|
||||
╔═╩══════════════════════════════╝ function ╚═════════════════════════╩═╗
|
||||
║ new string to be used──────────┐ ┌─────limit of # changes (times)║
|
||||
║ original string (haystack)────────┐ │ │ [default: ≈ one billian]║
|
||||
║ old string to be changed───┐ │ │ │ ┌───begin at this occurance #.║
|
||||
║ {O, H, and N can be null.} │ │ │ │ │ [default: 1st occurrance]║
|
||||
╚═╦════════════════════════════╗ │ │ │ │ │ ╔═══════════════════════╦═╝
|
||||
╚════════════════════════════╝ ↓ ↓ ↓ ↓ ↓ ╚═══════════════════════╝*/
|
||||
changestr: procedure; parse arg o,h,n,t,b /* T and B are optional.*/
|
||||
$='' /*$: the returned string.*/
|
||||
t=word(t 999999999 , 1) /*maybe use the default? */
|
||||
b=word(b 1 , 1) /* " " " " */
|
||||
w=length(o) /*length of OLD string.*/
|
||||
if w==0 & t\=0 then return n || h /*changing a null char ? */
|
||||
#=0 /*# of changed occurances*/
|
||||
do j=1 until # >= t /*keep changing, T times.*/
|
||||
parse var h y (o) _ +(w) h /*parse the string ... */
|
||||
if _=='' then return $ || y /*no more left, return. */
|
||||
if j<b then $=$ || y || o /*didn't meet begin at ? */
|
||||
else do
|
||||
$=$ || y || n /*build new STR from S. */
|
||||
#=#+1 /*bump occurance number. */
|
||||
end
|
||||
end /*j*/
|
||||
/*Most REXX BIFs only ···*/
|
||||
return $ || h /* support three options.*/
|
||||
Loading…
Add table
Add a link
Reference in a new issue