|
本帖最后由 caodongchun 于 2009-7-3 18:23 编辑
;困惑好久了,终于搞定了
;TXT2HTM 保留了超链接和email链接,保留了原有TXT的文档格式
;你可以在 http://tieba.baidu.com/f?kz=157732214 上复制一个圣诞树试验一下
$txtstr = FileRead(@ScriptDir & '\test.txt');读文件到字符串
$txtstr=String($txtstr)
$txtstr = StringReplace($txtstr, '<', '<');去除html标记
$txtstr = StringReplace($txtstr, '>', '>');去除html标记
$txtstr = StringReplace($txtstr, ' ', ' ');替代空格
$urllinkstr = StringRegExp($txtstr, '(?s)[a-zA-z]+://[^\s]*', 3)
If IsArray($urllinkstr) Then
For $x = 0 To UBound($urllinkstr) - 1
$urllinkstr[$x] = StringReplace($urllinkstr[$x], '?', '\?')
$txtstr = StringRegExpReplace($txtstr, '(?m)^' & $urllinkstr[$x] & '|' & '(?m) ' & $urllinkstr[$x] & '|' & '(?m) ' & $urllinkstr[$x], '<A HREF="' & $urllinkstr[$x] & '" TARGET=_blank class=ilink>' & $urllinkstr[$x] & '</A>' & ' ', 1)
Next
EndIf ;提取url并替换为html代码
$emllinkstr = StringRegExp($txtstr, '\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*', 3)
If IsArray($emllinkstr) Then
For $x = 0 To UBound($emllinkstr) - 1
$txtstr = StringRegExpReplace($txtstr, '(?m)^' & $emllinkstr[$x] & '|' & '(?m) ' & $emllinkstr[$x] & '|' & '(?m) ' & $emllinkstr[$x], '<A HREF="mailto:' & $emllinkstr[$x] & '">' & $emllinkstr[$x] & '</A>' & ' ', 1)
Next
EndIf;提取email并替换html代码
$txtstr = StringReplace($txtstr, @CRLF, '<BR>');替换换行符为html代码
$header = '<html>' & @CRLF & '<head>' & @CRLF & '<meta http-equiv="Content-Type" content="text/html; charset=gb2312">' & @CRLF & '<title>'
$title = '可以取自文件名'
$end = $title & '</title>' & @CRLF & '</head>' & @CRLF & '<body>' & @CRLF & '<span>' & $txtstr & '</span>' & @CRLF & '</body>' & @CRLF & '</html>'
$htmlstr = $header & $title & $end
$htmlfile = FileOpen(@ScriptDir & '\test.htm', 2)
FileWrite($htmlfile, $htmlstr)
FileClose($htmlfile)
ShellExecute(@ScriptDir & '\test.htm') |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入
×
评分
-
查看全部评分
|