したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

htmltodatサポートスレッド

387 ◆/vmukiyuzw:2006/12/28(木) 23:52:01
・・・と言いながらももうちょっとがんばってみよう・・・
まず>>362の前処理は以下のとおり

s#(/\d+\.html)\.html(</a>)#$1$2#ig
s#(>)\.\./\d+?/(\d+?)\.html(</a>)#$1http://$server\.2ch\.net/test/read\.cgi/$board/$2/$3#ig
s#(>)\.\./\.\./(.+?)_(.+?)/\d+?/(\d+?)\.html(</a>)#$1http://$2\.2ch\.net/test/read\.cgi/$3/$4/$5#ig
s#(>)\.\./\d+?/(\d+?)\.html(?:\.html)?(?:\#)?([^<]+?)?(</a>)#$1http://$server\.2ch\.net/test/read\.cgi/$board/$2/$3$4#ig

1行目は2ch.netかbbspink.comかに関係ないのでそのままでOK
2行目と4行目は「\.2ch\.net」を「\.bbspink\.com」に修正すればOK
問題は3行目ですが>>386の(3)のとおりbbspink-があるかないかで
bbspink.comなのか2ch.netなのかが変わってきます。
(bbspink.comのスレだが中に2ch.netに対するリンクがありうるので無視するわけにはいかない)
なので2つに分けてしまいましょう。

s#(>)\.\./\.\./bbspink-(.+?)_(.+?)/\d+?/(\d+?)\.html(</a>)#$1http://$2\.bbspink\.com/test/read\.cgi/$3/$4/$5#ig
s#(>)\.\./\.\./(.+?)_(.+?)/\d+?/(\d+?)\.html(</a>)#$1http://$2\.2ch\.net/test/read\.cgi/$3/$4/$5#ig


結局まとめるとこんな感じでしょうか

s#(/\d+\.html)\.html(</a>)#$1$2#ig
s#(>)\.\./\d+?/(\d+?)\.html(</a>)#$1http://$server\.bbspink\.com/test/read\.cgi/$board/$2/$3#ig
s#(>)\.\./\.\./bbspink-(.+?)_(.+?)/\d+?/(\d+?)\.html(</a>)#$1http://$2\.bbspink\.com/test/read\.cgi/$3/$4/$5#ig
s#(>)\.\./\.\./(.+?)_(.+?)/\d+?/(\d+?)\.html(</a>)#$1http://$2\.2ch\.net/test/read\.cgi/$3/$4/$5#ig
s#(>)\.\./\d+?/(\d+?)\.html(?:\.html)?(?:\#)?([^<]+?)?(</a>)#$1http://$server\.bbspink\.com/test/read\.cgi/$board/$2/$3$4#ig


ちなみに3行目、4行目はこの順番でないとダメです
なぜなら、4行目の(.+?)_はbbspink-pieにもヒットしてしまうので3行目で先に変換しておかないと
2ch\.netにみなされてしまいまずいことになるからです


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板