|
スレッドが使えるようになったので、第2掲示板の投稿記事リストを作成しました。
投稿記事の古い順に並べたリストです。
タイトル部分をクリックすれば、その投稿記事にリンクします。
掲示板のソースをテキストファイルにし、下のプログラムで投稿表題部分を抽出し作成しました。
参考情報……スレッドへの投稿記事は、投稿者本人でも後から編集はできないようです。
訂正……スレッドへの投稿記事も、投稿者本人による編集・削除が可能です。
LET t1$="<H2><A NAME=""CID" ! ID No.
LET t1=LEN(t1$)
LET t2$=""" HREF=""http://6317.teacup.com/basic/bbs/" ! ID No.
LET t2=LEN(t2$)
LET t3$=""" CLASS=""Kiji_Title"">" ! タイトル
LET t3=LEN(t3$)
LET t4$="</A></H2>"
LET t4=LEN(t4$)
!
LET p1$=" 投稿者:<SPAN CLASS=""Kiji_Author"">" ! 投稿者
LET p1=LEN(p1$)
LET p2$="</SPAN>"
LET p2=LEN(p2$)
LET p3$="<A HREF=" ! mailto
LET p3=LEN(p3$)
LET p4$=""">"
LET p4=LEN(p4$)
LET p5$="</A>"
LET p5=LEN(p4$)
!
LET d1$=" 投稿日:" ! 投稿日時
LET d1=LEN(d1$)
LET d2$="日(" ! 曜日
LET d2=LEN(d2$)
!
LET l1$="> <A HREF=""http://6317.teacup.com/basic/bbs/" ! 元記事 No.
LET l1=LEN(l1$)
LET l2$=">No." ! 元記事 No.
LET l2=LEN(l2$)
LET l3$="[元記事へ]</A><BR><BR>"
LET l3=LEN(l3$)
!
LET finput$="source.txt"
LET foutput$="boardlist.txt"
OPEN #1 : NAME finput$ ,ACCESS INPUT
!
DIM c$(1000)
LET k=0
DO
LINE INPUT #1 , IF MISSING THEN EXIT DO : a$
IF a$(1:l1)=l1$ THEN ! 元記事あり
LET ps=POS(a$,l2$,l1+1)
LET ps2=POS(a$,l3$,ps+l2)
LET s$=s$&" "&a$(ps:ps2-1)
ELSEIF a$(1:t1)=t1$ THEN
IF s$<>"" THEN
LET k=k+1
LET c$(k)=s$&"</SMALL>"
END IF
CALL title
END IF
LOOP
IF s$<>"" THEN
LET k=k+1
LET c$(k)=s$&"</SMALL>"
END IF
CLOSE #1
!
OPEN #2 : NAME foutput$ ,ACCESS OUTPUT
SET #2 : POINTER END
FOR i=k TO 1 STEP -1
PRINT #2 : c$(i)
NEXT i
CLOSE #2
!
SUB title
LET s$="<A HREF=""http://6317.teacup.com/basic/bbs/"
LET id$=a$(t1+1:POS(a$,"""",t1+1)-1)
LET s$=id$&" "&s$&id$&"""><B><BIG>"
LET ps=POS(a$,t3$,t1+2)
LET ps2=POS(a$,t4$,ps+t3)
LET s$=s$&a$(ps+t3:ps2-1)&"</BIG></B></A> 投稿者:<FONT COLOR=""#555555""><STRONG>"
LINE INPUT #1 : a$
IF a$(1:p1)=p1$ THEN
IF a$(p1+1:p1+p3)=p3$ THEN
LET s$=s$&a$(POS(a$,p4$,p1+p3+1)+p4:POS(a$,p5$,p1+p3+3)-1)&"</STRONG></FONT><SMALL>"
ELSE
LET s$=s$&a$(p1+1:POS(a$,p2$,p1+1)-1)&"</STRONG></FONT><SMALL>"
END IF
END IF
LINE INPUT #1 : a$
LINE INPUT #1 : a$
IF a$(1:d1)=d1$ THEN
LET s$=s$&" "&a$(d1+1:POS(a$,d2$,d1+2))
END IF
END SUB
END
|
|