1 REM 2 OPEN "tausch.txt" FOR INPUT AS #1:TAUSCH%=-1 3 LINE INPUT #1, TAUSCH$: 4 IF INSTR(TAUSCH$,"*Ende")=0 THEN TAUSCH%=TAUSCH%+1:GOTO 3 5 CLOSE #1 100 DIM TAUSCH$(3,TAUSCH%) 110 OPEN "tausch.txt" FOR INPUT AS #1 120 LINE INPUT #1, TAUSCH$: 130 IF INSTR(TAUSCH$,"*Ende")>0 THEN 1000 140 IF INSTR(TAUSCH$,"Seite") > 0 AND INSTR(TAUSCH$,"$")=0 THEN 150 ELSE 300 150 RED$="":K$="":K%=0:WHILE K$<>"b":K%=K%+1:K$=MID$(TAUSCH$,K%,1):IF INSTR("0123456789",K$)>0 THEN RED$=RED$+K$ 160 WEND 170 TAUSCH$(1,0)=RED$:STARTSEITE%=VAL(RED$) 180 RED$="":K$="":FOR I%=K% TO LEN(TAUSCH$):K$=MID$(TAUSCH$,I%,1):IF INSTR("0123456789",K$)>0 THEN RED$=RED$+K$ 190 NEXT I% 200 TAUSCH$(2,0)=RED$:SEITENMAX%=VAL(RED$):GOTO 120 300 GZ1%=INSTR(TAUSCH$,"#"):IF GZ1%=0 THEN 120 ELSE RED$="":FOR I%=1 TO GZ1%-1:RED$=RED$+MID$(TAUSCH$,I%,1):NEXT I% 301 TAUSCHPARAM%=TAUSCHPARAM%+1 302 TAUSCH$(1,TAUSCHPARAM%)=RED$ 310 GZ2%=INSTR(GZ1%+1,TAUSCH$,"#"):IF GZ2%=0 THEN STOP ELSE RED$="":FOR I%=GZ1%+1 TO GZ2%-1:RED$=RED$+MID$(TAUSCH$,I%,1):NEXT I% 312 TAUSCH$(2,TAUSCHPARAM%)=RED$ 320 GOTO 120 1000 CLOSE #1: DIM SEITEN$(2,SEITENMAX%) 1001 FOR I=0 TO TAUSCH%-1:PRINT TAUSCH$(1,I),TAUSCH$(2,I):NEXT I 1002 REM 1003 REM 1004 REM 2000 FOR SEITE%=STARTSEITE% TO SEITENMAX%: 2011 SEITEN$(2,SEITE%)= "form-"+RIGHT$("000"+RIGHT$(STR$(SEITE%),LEN(STR$(SEITE%))-1),3)+".php":REM seitenname 2015 REM ****++++**** Seitennamen sind abgestellt in seitenname$(seite%), von form-001.php bis ggfs. form-999.php 2051 IF SEITE%=1 AND SEITE%=SEITENMAX% THEN SEITEN$(1,SEITE%)="gg-00.php" 2052 IF SEITE%=1 AND SEITE%<SEITENMAX% THEN SEITEN$(1,SEITE%)="gg-01.php" 2053 IF SEITE%>1 AND SEITE%<SEITENMAX% THEN SEITEN$(1,SEITE%)="gg-02.php" 2054 IF SEITE%>1 AND SEITE%=SEITENMAX% THEN SEITEN$(1,SEITE%)="gg-03.php" 2060 NEXT SEITE% 2070 REM 2080 REM 2090 REM 3000 FOR SEITE%=STARTSEITE% TO SEITENMAX% 3020 GRUNDDATEI$= SEITEN$(1,SEITE%):SEITENNAME$=SEITEN$(2,SEITE%) 3030 OPEN GRUNDDATEI$ FOR INPUT AS #1: OPEN SEITENNAME$ FOR OUTPUT AS #2 3031 LINE INPUT #1, QUELLE$:IF INSTR(QUELLE$,"</html>") THEN PRINT #2,QUELLE$:CLOSE #1,#2:GOTO 3900 3035 IF INSTR(QUELLE$,"$$$")=0 THEN PRINT #2,QUELLE$:GOTO 3031 3100 IF INSTR(QUELLE$,"$$$$")=0 THEN 3300 3200 PARAM$="$$$$text$$$$":IF INSTR(QUELLE$,PARAM$) =0 THEN 3300 3201 I%=0:OK%=0:WHILE TAUSCH$(1,I%) <>PARAM$: I%=I%+1:WEND:IF TAUSCH$(1,I%)=PARAM$ THEN OK%=I% ELSE GOTO 3031 3210 ZAHL%=SEITE%:FORMAT$="???":GOSUB 63300:ALTSTRING$=TAUSCH$(2,OK%):ALTTEIL$="???":NEUTEIL$=FORMATZAHL$:GOSUB 63000:TEXTDATEI$=NEUSTRING$ 3220 ON ERROR GOTO 3240 3222 OPEN TEXTDATEI$ FOR INPUT AS #3: 3224 LINE INPUT #3, TEXT$:IF INSTR(TEXT$,"*Ende")=0 THEN PRINT #2,TEXT$ ELSE 3031 3225 GOTO 3224 3240 IF ERL <>3222 THEN STOP ELSE RESUME 3031 3250 REM 3260 REM 3300 IF INSTR(QUELLE$,"$$$") =0 THEN PRINT: "falsche parameterangabe!":STOP 3310 I%=1:OK%=0: WHILE INSTR(QUELLE$,TAUSCH$(1,I%))=0:I%=I%+1:WEND: OK%=I%:IF INSTR(QUELLE$,TAUSCH$(1,OK%))=0 THEN PRINT #2, QUELLE$:GOTO 3031 3330 PARAM$=TAUSCH$(1,OK%):ERSATZ$=TAUSCH$(2,OK%): 3332 A%=INSTR (ERSATZ$,"&"): IF A%=0 THEN A%=INSTR(ERSATZ$,"?"):IF A%=0 THEN STOP 3334 FF$=MID$(ERSATZ$,A%,1): FORMAT$="":I%=0:WHILE MID$(ERSATZ$,A%+I%,1)=FF$:FORMAT$=FORMAT$+FF$:I%=I%+1:WEND 3336 IF PARAM$<>"$$$aktuelle-seite$$$" THEN 3350 3337 ALTSTRING$=QUELLE$:ALTTEIL$=PARAM$:ZAHL%=SEITE%:GOSUB 63300:NEUTEIL$=FORMATZAHL$:GOSUB 63000:goto 3395 3338 REM 3350 IF PARAM$<>"$$$seitenmax$$$" THEN 3360 3351 ALTSTRING$=QUELLE$:ALTTEIL$=PARAM$:ZAHL%=SEITENMAX%:GOSUB 63300:NEUTEIL$=FORMATZAHL$:GOSUB 63000:goto 3395 3360 IF PARAM$<>"$$$bild$$$" THEN 3380 3361 ALTSTRING$=ERSATZ$:ALTTEIL$=FORMAT$:ZAHL%=SEITE%:GOSUB 63300:NEUTEIL$=FORMATZAHL$:GOSUB 63000:NEUTEIL$=NEUSTRING$:ALTTEIL$=PARAM$:ALTSTRING$=QUELLE$:GOSUB 63000:goto 3395 3380 IF PARAM$<>"$$$folgeseite$$$" THEN 3390 3381 ALTSTRING$=ERSATZ$:ALTTEIL$=FORMAT$:ZAHL%=SEITE%+1:GOSUB 63300:NEUTEIL$=FORMATZAHL$:GOSUB 63000:NEUTEIL$=NEUSTRING$:ALTTEIL$=PARAM$:ALTSTRING$=QUELLE$:GOSUB 63000:goto 3395 3390 IF PARAM$<>"$$$vorherige-seite$$$" THEN 3390 3391 ALTSTRING$=ERSATZ$:ALTTEIL$=FORMAT$:ZAHL%=SEITE%-1:GOSUB 63300:NEUTEIL$=FORMATZAHL$:GOSUB 63000:NEUTEIL$=NEUSTRING$:ALTTEIL$=PARAM$:ALTSTRING$=QUELLE$:GOSUB 63000:goto 3395 3393 REM 3394 REM 3395 if instr(neustring$,"$$$")=0 then PRINT #2,NEUSTRING$:GOTO 3031 else quelle$=neustring$:goto 3300 3900 NEXT SEITE%:END 63000 REM subroutine: altteil$ wird im altstring$ durch neuteil$ ersetzt, der neue String in neustring$ ausgegeben 63010 K%=INSTR(ALTSTRING$,ALTTEIL$):ALTSTRING1$=LEFT$(ALTSTRING$,K%-1) 63020 ALTSTRING2$=RIGHT$(ALTSTRING$,LEN(ALTSTRING$)-K%-LEN(ALTTEIL$)+1) 63030 NEUSTRING$=ALTSTRING1$+NEUTEIL$+ALTSTRING2$ 63040 RETURN 63041 REM 63042 REM 63300 REM subroutine: formatiert positive ganzzahl zahl% gemaess Vorgaben in format$ und stellt formatierte zahl als string in formatzahl$ ab 63310 LAENGE%=LEN(FORMAT$):IF INSTR(FORMAT$,"&")>0 THEN FUELL$=" " ELSE FUELL$="0" 63320 FORMATZAHL$=STR$(ZAHL%):FORMATZAHL$=RIGHT$(STR$(ZAHL%),LEN(FORMATZAHL$)-1):MAXFUELL$=STRING$(LAENGE%-1,FUELL$):FORMATZAHL$=RIGHT$(MAXFUELL$+FORMATZAHL$,LAENGE%) 63330 RETURN 63331 REM 63332 REM |