掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1406|回复: 7

[求助] 正则表达式请教

[复制链接]
  • TA的每日心情
    奋斗
    2020-12-22 18:46
  • 签到天数: 43 天

    [LV.5]常住居民I

    发表于 2019-11-9 01:25:42 | 显示全部楼层 |阅读模式
    我使用安卓手机上Anki Helper这个软件时(https://github.com/mmjang/ankihelper),由于它对西班牙语支持不好,根据主页的介绍,想做一个西英词典。由于缺乏基础,前几天得到的比较详尽的西语词典无法改造,只有一本手头的vox口袋词典和要求详尽。我已经手动、自动删除了一些内容,但是到了这个地方难住了:
    0 r8 |6 [* C' d& U- [6 }
    <p class="indenthanging"><strong>adelantamiento</strong> <em>nm</em> overtaking.
    % G8 ^; p2 M$ z$ c7 L&nbsp; <font size='1' >•</font><strong>hacer un adelantamiento</strong> to overtake.
    - ?& y  t1 K8 g0 L<p class="indenthanging"><strong>adelantar</strong> <em>vt</em> <strong>1</strong> <em>(mover adelante)</em> to move forward. <strong>2</strong> <em>(reloj)</em> to put forward. <strong>3</strong> <em>(pasar adelante)</em> to pass; <em>(vehículo)</em> to overtake. <strong>4</strong> <em>(dinero)</em> to pay in advance [<em>pt &amp; pp</em> <strong>paid</strong>].
    如何把上述的蓝色词条留下,红色删除,并在词条后面添加一个制表符(\t)呢?即变成adelantamiento\t5 c- I* r7 ]9 e
    因为根据该软件需求,只能使用制表符分割单词和释义,不知道以上办法可不可以把单词和解释分成两部分?可是一个词条下面又分成多行,该怎么办?& I. {& e6 i: r/ V2 t- F! R
    另外,我手动删除了三百多处冗余,但是这并不是好办法。即<a id="page_Vol(不同编号)"/>,请问这个地方可以一起用表达式删掉吗?
    * S/ g. f+ j# w4 U% ?请论坛大神指教。2 c* W  p& {( ]* X; b
  • TA的每日心情
    开心
    2023-9-27 20:45
  • 签到天数: 847 天

    [LV.10]以坛为家III

    发表于 2019-11-10 10:20:58 | 显示全部楼层
    宁冷越 发表于 2019-11-9 22:51
    3 Z- h& d, n. P  m4 \; _' b5 ?顺便请教一下,要写一个这样的程序,需要学习哪些编程知识,比如哪种编程语言?谢谢。 ...

    ( H+ |1 R4 k1 y: E* w要想快速写出这种程序,学学Python基础知识和正则表达式的库就行

    评分

    1

    查看全部评分

  • TA的每日心情
    开心
    2023-9-27 20:45
  • 签到天数: 847 天

    [LV.10]以坛为家III

    发表于 2019-11-9 19:18:21 | 显示全部楼层
    mrfu 发表于 2019-11-9 14:58
    ) }7 S5 Z! g* F多谢多谢!!!在这还有一个问题请教,mdx词典导出成txt后,都是词头加上一个link,然后到词条,有什么办 ...

    # m, ^3 c1 i; n( ]这个需要写一个程序来实现,取@@@LINK跳转的词的意项,然后组合
  • TA的每日心情
    奋斗
    2020-12-22 18:46
  • 签到天数: 43 天

    [LV.5]常住居民I

     楼主| 发表于 2019-11-9 01:31:56 | 显示全部楼层
    是不是需要先去掉所有的换行符,然后在上述红色的地方前面再加一个换行符,这样保证每个词条只占一行?
  • TA的每日心情
    开心
    2023-9-27 20:45
  • 签到天数: 847 天

    [LV.10]以坛为家III

    发表于 2019-11-9 07:18:35 | 显示全部楼层
    你说的都可以用正则实现,先去学学正则吧  推荐:https://deerchao.cn/tutorials/regex/regex.htm7 s* a$ R; W# l4 S: e" ~

    " z3 J  d; p; ?( S7 h, ]第一个:
    : P3 P5 W4 N  b替换  <p class="indenthanging"><strong>(.*?)</strong>
    6 E$ T! |, a& e8 x9 F% D0 W* q
    * d/ ~7 y$ p2 S# Q" ~为  \1\t
    : [* J7 m! ]" k  {0 ~, I- m. b* C/ W7 ]4 j
    第二个:
    ; C. {. C8 R: \  {, o6 |- C替换: <a id="page_Vol[^"]*"/>
    ; ~3 i% H7 k- @1 J0 r5 i' ?9 @; H' L5 Q5 b0 w/ E& m, w
    为   空字符
  • TA的每日心情
    奋斗
    2020-12-22 18:46
  • 签到天数: 43 天

    [LV.5]常住居民I

     楼主| 发表于 2019-11-9 14:58:55 | 显示全部楼层
    nullname 发表于 2019-11-9 07:18
    ! g# H3 F7 Y2 H- Z0 f. A( [. s你说的都可以用正则实现,先去学学正则吧  推荐:https://deerchao.cn/tutorials/regex/regex.htm1 F5 H1 F! Y- H5 w) _

    - @# s/ x8 `$ f8 p$ |8 t第一个 ...

    $ ^  H# O8 N9 a; ?6 |& M3 K4 y多谢多谢!!!在这还有一个问题请教,mdx词典导出成txt后,都是词头加上一个link,然后到词条,有什么办法取消link,直接把词头和词条放在一起呢?
  • TA的每日心情
    擦汗
    2023-3-25 13:49
  • 签到天数: 147 天

    [LV.7]常住居民III

    发表于 2019-11-9 22:51:30 | 显示全部楼层
    nullname 发表于 2019-11-9 19:18
    ( _1 r% v% W+ X. \* ~/ ?; }1 V1 A; x$ |这个需要写一个程序来实现,取@@@LINK跳转的词的意项,然后组合
    7 G# ~* F2 ?! ]
    顺便请教一下,要写一个这样的程序,需要学习哪些编程知识,比如哪种编程语言?谢谢。
  • TA的每日心情
    擦汗
    2023-3-25 13:49
  • 签到天数: 147 天

    [LV.7]常住居民III

    发表于 2019-11-10 15:42:06 | 显示全部楼层
    nullname 发表于 2019-11-10 10:204 o; R6 V% v$ z, `; x9 j
    要想快速写出这种程序,学学Python基础知识和正则表达式的库就行

    - J$ [+ u8 T/ Y9 I8 l- F好的,谢谢你。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

    小黑屋|手机版|Archiver|PDAWIKI |网站地图

    GMT+8, 2025-5-6 13:05 , Processed in 0.021809 second(s), 23 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表