掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 1099|回复: 8

[求助] 正则表达式问题。

[复制链接]
  • TA的每日心情
    开心
    2022-5-4 10:45
  • 签到天数: 276 天

    [LV.8]以坛为家I

    发表于 2018-12-26 09:21:49 | 显示全部楼层 |阅读模式
    本帖最后由 sagog 于 2018-12-26 09:27 编辑
    6 u2 M& V! U6 _" c+ o& Q! a7 G: ^5 g2 ]* _# O% z: g' Y# r3 B6 K# w
    豬婆
    2 t; T0 l8 o6 I" q6 c: \<link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>豬婆</h2>(豬婆,猪婆)</span><BR><com>母豬。</com><br>) ?  u$ z$ F1 ~5 \' h
    <link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>豬婆</h2>補證條目</span><br>“南邊人的俗語,叫作貪嵞買豬婆肉。”</span>
    # ^2 O; Z& k6 |. o; i<link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>稅籍</h2>(稅籍,税籍)</span><BR><com>徵稅的簿冊。</com><br><span class="example">《
    * d$ W( ~: L' {</>
    $ b1 W- I0 @+ B2 a一拍卽合
    5 O& U& [: H: a; d! t5 s- @<link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>一拍卽合</h2><com>原指一打拍子就合於樂曲的節奏。 比喻一下子就能夠互相吻合。</com>
    2 E; g# r3 n: w8 d# w<link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>一拍卽合</h2>補證條目<br>原指一打拍子就合於樂曲的節奏。比喻一下子就能夠互! G( J2 [4 O( `* V( K3 h
    <link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>剝取</h2>(剝取,剥取)</span>猶榨取。</com><br><span class="example"><span
    & C2 C+ Y4 \' L6 Z( t</>. a) B2 Z7 S. b$ a* p7 M5 i9 ~
    + |9 K. j+ M3 y4 U& e
    4 S) D# `1 U: R8 d7 j3 S
    从上述情况中删除其他词条的正则表达式是什么?
    ( U+ n! H0 r5 M5 W' D
    , k; a) A# W5 |8 Z8 A<h2>稅籍</h2>與<h2>剝取</h2>行" d7 j! V6 l6 ~) A# O5 S
  • TA的每日心情
    奋斗
    2020-1-3 10:54
  • 签到天数: 159 天

    [LV.7]常住居民III

    发表于 2018-12-26 09:41:53 | 显示全部楼层
    你是想保留的是<h2>标签内的内容,还是什么意思?! Q7 |/ h! d5 v) q* L) e2 {" B4 a
  • TA的每日心情

    2023-3-29 00:54
  • 签到天数: 344 天

    [LV.8]以坛为家I

    发表于 2018-12-26 09:53:28 | 显示全部楼层
    没明白正则是要删除啥。
  • TA的每日心情
    开心
    2022-5-4 10:45
  • 签到天数: 276 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-12-26 10:00:13 | 显示全部楼层
    OldFarmer 发表于 2018-12-26 09:412 Z) e1 ~- y/ f" @( A# O
    你是想保留的是标签内的内容,还是什么意思?
    ' n- Z& k2 O+ @  k& {0 V
    8 e) i4 ?  i) x% g/ h+ W
    我想用正则表达式删除其他词条。- Q5 Y1 J: n% @8 J

    + ~8 o' ?/ l  e
      t# A( [+ q/ f$ j0 a9 X4 Y我想得到以下结果。
    # }5 [; n* |$ l' V- U, Y
    1 Y- ]# Y$ F$ O! ]+ h& m. x9 t# `豬婆5 X3 \, S& b2 Z) q( @$ a
    <link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>豬婆</h2>(豬婆,猪婆)</span><BR><com>母豬。</com><br>6 S' b7 n+ Z) ?& c, d
    <link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>豬婆</h2>補證條目</span><br>“南邊人的俗語,叫作貪嵞買豬婆肉。”</span>
    " I8 d- f* i1 l8 V$ k
    0 f0 y! V. x& j2 v</>. w0 h0 J. W) p4 |5 R$ {" [+ {9 F
    一拍卽合
    ! B* i% l. S! h+ s. D<link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>一拍卽合</h2><com>原指一打拍子就合於樂曲的節奏。 比喻一下子就能夠互相吻合。</com>
    " k: f" V$ |+ [: L) L4 R. \8 `<link type="text/css" rel="stylesheet" href="hydcd.css"/><h2>一拍卽合</h2>補證條目<br>原指一打拍子就合於樂曲的節奏。比喻一下子就能夠互
    ' S' Y0 V8 ~9 N+ u" O</>
    , n" ^( }" ^7 A8 Y6 X, B- B
  • TA的每日心情
    奋斗
    2020-1-3 10:54
  • 签到天数: 159 天

    [LV.7]常住居民III

    发表于 2018-12-26 10:21:42 | 显示全部楼层
    我还是没有看懂你的意思
  • TA的每日心情
    奋斗
    2019-10-13 07:34
  • 签到天数: 209 天

    [LV.7]常住居民III

    发表于 2018-12-26 10:41:27 | 显示全部楼层
    本帖最后由 VimVim 于 2018-12-26 11:21 编辑 7 J% U) ]) {& B  ~
    , E3 @  X3 U) R) ]3 I8 M
    Vim的解决方案:
    , L% H5 e& `  J% j3 M# G1、采用Vim宏命令,自动获取词头并存入寄存器a(具体请自行解决)4 p1 L6 Z& K: U8 T6 U
    2、使用vim的替换命令(其中^Ra指上述寄存器a中的内容,而非普通字符),将非词头的行删除:
    7 K4 s* I5 g. p$ t1 \:s/\v(.*)(\<h2\>((?!^Ra).)+\<\/h2\>)(.*)//
    # W' R, t, o, U# M+ ^: q6 _3、将上述指令存入Vim宏命令,批量实施:具体案例可参考 8 c0 X6 h, O% p% Z! B8 Y
    https://www.pdawiki.com/forum/fo ... d=32243&pid=1033507 , N- l9 ^; `  j: ?9 C& h! D

    3 t; r% E9 U( n, N! l8 `% y具体测试结果请查看:8 Q' R$ E3 Y3 Y* W
    4 X( [% u3 f0 J4 _# T
    在线测试正则表达式:https://c.runoob.com/front-end/854
    * M! f7 W: H: x9 P; O, p测试用例:(.*)(\<h2\>((?!豬婆).)+\<\/h2\>)(.*)
    - p; J2 j. R% d4 B# d- H' y! l1 B1 b) }% n这与上述Vim指令相比:" d# y9 T: A, D$ [8 S, o; O3 w, t
    (1)少了Vim替换命令相关的内容,(2)“豬婆”等具体关键词,Vim会自动从上述第一步获取。
    , ~6 i. N/ Q9 \6 }- S7 }, `2 p3 h5 s
    ( F/ U/ x: H; A) a* W& [/ g
    : ~& r- }* k' r' L" y3 r5 w5 S. Y4 d
    , z" c0 S" H4 H' C" f1 u* a- R- `" K

    % N% }3 l$ }' M1 S# G' Z5 R1 f" e8 X8 d

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?免费注册

    x
  • TA的每日心情
    开心
    2022-5-4 10:45
  • 签到天数: 276 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-12-26 10:51:54 | 显示全部楼层
    OldFarmer 发表于 2018-12-26 10:21
    , B7 }) {& G. X( P我还是没有看懂你的意思

    : v# S4 Z- q! T7 T/ e: e4 I- O% p; g  X

    ' C: J' f. m8 e, H4 g9 N7 w在合并过程中这是错误的,这部分发生了很多。
    1 v; P0 \4 W1 X7 ]' S

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?免费注册

    x
  • TA的每日心情
    奋斗
    2020-5-22 08:16
  • 签到天数: 47 天

    [LV.5]常住居民I

    发表于 2018-12-26 18:29:18 | 显示全部楼层
    查找
    + {" k- t' b. D  `$ o
    1. (<h2>(?'name1'[^<>]*)</h2>.*)\n.+?<h2>(?!\k'name1').*$
    复制代码
    - @1 i7 {0 b/ n6 b5 N6 p
    替换, S$ K/ N8 L) Q6 T0 D$ l
    1. \1
    复制代码
    : H8 @7 J8 S9 Y! \3 {7 ?% ?! m
    替换一下/ R6 K3 d2 ?3 L% G- M& b* a
    我用的这个是PCRE正则表达式格式.可能和你的显示不同,自行研究修改.9 }' n/ V- \5 w  p4 N; V# q
    0 H8 B: D, d0 D7 Y- c! p
    思路:
    - I8 Y0 y7 v$ `3 u- h7 t
  • TA的每日心情
    开心
    2022-5-4 10:45
  • 签到天数: 276 天

    [LV.8]以坛为家I

     楼主| 发表于 2018-12-27 08:46:09 | 显示全部楼层
    baodi 发表于 2018-12-26 18:29  t) A. n, n! |0 k
    查找& I4 X% V0 P' |" d% Y4 ]4 L6 ?
    6 ?) m9 f8 r9 S" P' u
    替换

    & `* G- }8 z' M( a' R非常感谢你
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2025-5-6 15:16 , Processed in 0.021947 second(s), 22 queries .

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

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