查看: 747|回复: 11
打印 上一主题 下一主题

[求助] txt词条筛选问题

[复制链接]
  • TA的每日心情
    开心
    2019-6-27 08:03
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    40

    主题

    464

    回帖

    5430

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    5430

    灌水大神章

    跳转到指定楼层
    1
    发表于 2012-4-25 15:33:08 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
    请问各位高手:
    使用什么软件,如何在mdict的mdx转换出的txt中一次性筛选出具有某种特征的词条,同时删除其它不具这种特征的词条?
  • TA的每日心情
    开心
    2020-4-3 10:17
  • 签到天数: 1 天

    [LV.1]初来乍到

    35

    主题

    136

    回帖

    1238

    积分

    解元

    Rank: 5Rank: 5

    积分
    1238

    灌水大神章

    2
    发表于 2012-4-25 18:54:01 | 只看该作者
    这个好像比较有难度,具体是什么东西,你发出来看看吧
  • TA的每日心情
    开心
    2019-6-27 08:03
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    40

    主题

    464

    回帖

    5430

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    5430

    灌水大神章

    3
     楼主| 发表于 2012-4-25 19:20:18 | 只看该作者
    即这里的 词条 a  abandon  abandoned 一次性选出,其它个词条一次性删除。
  • TA的每日心情
    开心
    2020-4-3 10:17
  • 签到天数: 1 天

    [LV.1]初来乍到

    35

    主题

    136

    回帖

    1238

    积分

    解元

    Rank: 5Rank: 5

    积分
    1238

    灌水大神章

    4
    发表于 2012-4-25 20:48:46 | 只看该作者
    1# menglongma

    可以用powergrep的collect功能,
    选出来的文本见下:

    图像 001.jpg (132.71 KB, 下载次数: 0)

    图像 001.jpg

    1.part01.rar

    500 KB, 下载次数: 8, 下载积分: 米 -5 粒

    1.part02.rar

    500 KB, 下载次数: 8, 下载积分: 米 -5 粒

    1.part03.rar

    500 KB, 下载次数: 8, 下载积分: 米 -5 粒

    1.part04.rar

    500 KB, 下载次数: 8, 下载积分: 米 -5 粒

    1.part05.rar

    500 KB, 下载次数: 8, 下载积分: 米 -5 粒

    1.part06.rar

    500 KB, 下载次数: 8, 下载积分: 米 -5 粒

    1.part07.rar

    381.88 KB, 下载次数: 8, 下载积分: 米 -5 粒

  • TA的每日心情
    开心
    2019-6-27 08:03
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    40

    主题

    464

    回帖

    5430

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    5430

    灌水大神章

    5
     楼主| 发表于 2012-4-26 07:36:44 | 只看该作者
    非常感谢
  • TA的每日心情
    开心
    2019-6-27 08:03
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    40

    主题

    464

    回帖

    5430

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    5430

    灌水大神章

    6
     楼主| 发表于 2012-4-26 09:29:51 | 只看该作者
    感谢指导并帮助筛选所需材料,已经做完所要的MDX . 我按你的指点下了一个这样的软件,可是打不开txt文件,不知何故。
  • TA的每日心情
    开心
    2020-4-3 10:17
  • 签到天数: 1 天

    [LV.1]初来乍到

    35

    主题

    136

    回帖

    1238

    积分

    解元

    Rank: 5Rank: 5

    积分
    1238

    灌水大神章

    7
    发表于 2012-4-26 19:58:50 | 只看该作者
    本帖最后由 bnuliujitao 于 2012-4-26 20:00 编辑

    7# menglongma

    不是直接打开,在左边添加。

    图像 002.jpg (38.58 KB, 下载次数: 0)

    图像 002.jpg
  • TA的每日心情
    开心
    2019-6-27 08:03
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    40

    主题

    464

    回帖

    5430

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    5430

    灌水大神章

    8
     楼主| 发表于 2012-4-27 15:28:57 | 只看该作者
    谢谢了。
    已经重新下载了软件,进行了安装,正在摸索怎么使用,感觉很难。
    正则表达式对我来说,绝对是门外汉。
    试一试吧。
  • TA的每日心情
    开心
    2019-6-27 08:03
  • 签到天数: 8 天

    [LV.3]偶尔看看II

    40

    主题

    464

    回帖

    5430

    积分

    会元

    Rank: 7Rank: 7Rank: 7

    积分
    5430

    灌水大神章

    9
     楼主| 发表于 2012-4-27 15:29:51 | 只看该作者
    网上搜索半天,却找不见软件使用方面的东西。

    该用户从未签到

    13

    主题

    454

    回帖

    3027

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3027

    灌水大神章

    10
    发表于 2012-4-27 18:12:41 | 只看该作者
    考虑学下awk和sed. linux下面的, windows利用cygwin也可以用.

    该用户从未签到

    13

    主题

    454

    回帖

    3027

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3027

    灌水大神章

    11
    发表于 2012-4-29 16:32:15 | 只看该作者
    本帖最后由 惟吾无为 于 2012-4-29 16:34 编辑

    10# menglongma

    去 chinaunix.net shell版( http://bbs.chinaunix.net/forum-24-1.html )问, 要把问题写清楚, 标题要明确, 最好有awk或本文处理等字, 附上部分源文本(少而全, 多了没人看)及期望输出, 有人帮忙的.

    该用户从未签到

    13

    主题

    454

    回帖

    3027

    积分

    贡士

    Rank: 6Rank: 6

    积分
    3027

    灌水大神章

    12
    发表于 2012-4-29 16:44:24 | 只看该作者
    本帖最后由 惟吾无为 于 2012-4-29 17:01 编辑

    就以你给定的文本为例. 各条记录之间以</>分割, 所以指定记录分隔符(RS)为</>. 你想要含有心形的整条记录.
    全部输出即可. 输出内容的RS(ORS)和原来一样.
    1. awk 'BEGIN{RS="</>"; ORS=RS}/&#9824;/' /tmp/old
    复制代码
    如果想输出到新文件, 在后面加上 > /tmp/new
    1. awk 'BEGIN{RS="</>"; ORS=RS}/&#9824;/' /tmp/old  > /tmp/new
    复制代码
    就输出到new文件了.

    会用linux, 文本处理很简单. 以上操作在windows下的cygwin环境实测.

    ----add in 16:53----
    例如看下匹配到的条目的标题: 标题都是单词, 没有空格. 默认字段分隔符就是连续的空格或tab. 就不改了. 这样单词就是第一个字段, 读取$1即可.
    1. # awk 'BEGIN{RS="</>"; ORS=RS}/&#9824;/{print $1}' /tmp/old
    2. a</>abandon</>abandoned</>
    复制代码
    一看就不好, 把输出分隔符改成换行(默认就是.).
    1. # awk 'BEGIN{RS="</>"; ORS="\n"}/&#9824;/{print $1}' /tmp/old
    2. a
    3. abandon
    4. abandoned

    复制代码