TA的每日心情 | 开心 2019-8-21 08:44 |
---|
签到天数: 163 天 [LV.7]常住居民III
|
发表于 2018-11-27 18:18:59
|
显示全部楼层
本帖最后由 mikeee 于 2018-11-27 18:28 编辑 : k0 b* S/ t) d% @9 D
+ U# t8 o( }7 x! k4 Q不完美,但至少证实正则是可以做的,基本想法来自 https://www.rexegg.com/regex-trick-conditional-replacement.html,比较蹩脚的二次替代。如果正则引擎支持不定长逆序环视的话可能会简单些。我对这个问题感兴趣,因为之前碰到过类似的困扰我的问题。
: j9 _$ Q$ S! E! `' x; b$ D3 n) Q0 |8 @- ~( C; E2 ]
尾部加:1=A:2=B:3=C
6 H' f0 |7 ^2 ]- asdgzu1asdhui2sdhui31asdhuia2asdhuiTzzzzzz1zzzzzz2zzzzz31zzzzzz1zzzzz2zzzzzzzz31zzzzz1zzzzzzz2zzzzzz3Tasdhui1asdhui2ashdui31ashdui2asdhui31asdhui2ad
+ _+ o. y! |* h3 t# x" a
, C D, `7 G0 ^8 |6 D- :1=A:2=B:3=C
复制代码 9 U6 b8 k) Y' I7 z' g- K* P7 V8 i
" @0 A. `8 N$ e! l S搜- (?s)(?<=T)(.*?)(1)(.*?)(?=T)(?=.*:\2=([A-C]))
复制代码
! E, f( f& ~; {4 B替代(?s):单行模式或 "." 匹配换行符; (?<=T):后视;(?=T):前视; (?=.*:\2=([A-C])): 利用 \2 取得 \4 做替代用。8 y% C6 Q% }" H3 C
, }! [: o& O3 q9 h; H% ]
Editpad 里亲测可行,不过要点击多次 ctrl-shift-F3 (replace all) |
|