Chinaunix
标题:
如何从一个文件中提取中文字符
[打印本页]
作者:
aaaaa5aa
时间:
2011-04-02 10:09
标题:
如何从一个文件中提取中文字符
现有一个网页内容,我怎么从其中提取出中文字符来
<strong class="title">javascript:if(confirm('http://ikan.pptv.com/p/10789711/ \n\nτ¼��Teleport Pro ȡ»أ¬ӲΪ ̼μœ򼳂·¾¶3¬1��ʨ׃μķ¶Χ¡£ \n\nţҪ′ӷ�ϴ򿫋�))window.location='http://ikan.pptv.com/p/10789711/'" tppabs="http://ikan.pptv.com/p/10789711/" target="_ikanp" title="美女匪帮" jsvalue="hightlight">美女匪帮</a>
<dd class="intro">
党中央专区首长同志的女儿塔尼亚在敖德萨旅游的三天里,正赶上一个外号叫“会计师”的坏人的行动,扑朔迷离的绑架,扣人心弦的歼灭战,浪漫的爱情、坚固的友情和伟大的亲情穿插其中。最后坏…</dd>
导演:暂无信息
复制代码
请问我怎么提取:
美女匪帮
党中央专区首长同志的女儿塔尼亚在敖德萨旅游的三天里,正赶上一个外号叫“会计师”的坏人的行动,扑朔迷离的绑架,扣人心弦的歼灭战,浪漫的爱情、坚固的友情和伟大的亲情穿插其中。最后坏…</dd>
导演:暂无信息
复制代码
来呢
作者:
lenovo
时间:
2011-04-02 11:25
我对网页格式不懂。
中文字符是在特定格式下才会出现还是说这个文档
里面任何一个字符都可能是中文字符?
如果是有格式的,你解析格式既可。
否则的话,你需要得到文件的编码方式,然后根据编码方式
遍历每个字符来判断是不是中文字符。
像gb2312和utf-8,它们对中文字符的编码不同。
作者:
aaaaa5aa
时间:
2011-04-06 10:30
这个还没解决
作者:
OwnWaterloo
时间:
2011-04-08 12:44
本帖最后由 OwnWaterloo 于 2011-04-08 12:46 编辑
回复
1#
aaaaa5aa
一段 elisp 代码:
":";exec emacs --script $0 $*
(setq-default enable-multibyte-characters nil)
(ignore-errors
(let (line)
(while t
(set 'line (string-to-multibyte (read-from-minibuffer "")))
(dotimes (i (length line))
(when (eq 'chinese-gbk (char-charset (aref line i)))
(write-char (aref line i)) ) )
(write-char ?\n) ) ) )
复制代码
./extract.el < input.htm > chinese.txt
τμ·μΧ£′美女匪帮美女匪帮
党中央专区首长同志的女儿塔尼亚在敖德萨旅游的三天里,正赶上一个外号叫“会计师”的坏人的行动,扑朔迷离的绑架,扣人心弦的歼灭战,浪漫的爱情、坚固的友情和伟大的亲情穿插其中。最后坏…
导演:暂无信息
复制代码
前面几个古怪的字母也被算进去了……
完成主要功能的是那个 char-charset 函数, 可以获得一个字符所属的charset。
ascii, unicode, chinese-gbk, latin-iso8859-2 等。
(这方面的术语很混乱, 反正 Emacs 把上述这些叫做 charset)
unicode 标准除了规定每个character 的 codepoint, 可能还有规定那些区间是属于哪些文字吧。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2