掌上百科 - PDAWIKI

 找回密码
 免费注册

QQ登录

只需一步,快速开始

查看: 871|回复: 10

[求助] 几个关于正则表达式检索的问题

[复制链接]
  • TA的每日心情
    擦汗
    2023-2-15 04:29
  • 签到天数: 72 天

    [LV.6]常住居民II

    发表于 2019-12-9 22:13:19 | 显示全部楼层 |阅读模式
    本帖最后由 共同研习 于 2019-12-10 17:17 编辑
    5 T" z* q4 O% E! z6 G2 @3 u0 f/ g8 i+ Y
    我使用的是emeditor,有时常规搜索不能满足需求,需要正则表达式,有几个问题我不懂,希望高人指教:
    / K+ O( |& a" w2 p; M(1)给定两个字符(指定顺序)以及一个数字n,检索所有的行,要求包含这两个字符且两个字符间正好相隔n个字符。
    , A1 p6 q0 m" K/ |(2)给定两个字符(指定顺序)以及一个数字n,检索所有的行,要求包含这两个字符且两个字符间隔不大于n个字符。* D" r" D6 K6 O/ C) c' o
    (3)如何搜索包含“A一A”(笑一笑,跑一跑,等等)格式的行?---------------------" u5 R7 _, z* t& C4 Q- [' y
    感谢大家的回复4 W8 R" h' b7 t( S4 Y, k
  • TA的每日心情
    开心
    2019-5-18 22:39
  • 签到天数: 158 天

    [LV.7]常住居民III

    发表于 2019-12-9 22:50:53 | 显示全部楼层
    如果两个字符是 a 和 b$ O0 U* X7 P. Z/ n. U
    第1个:a.{n}b1 {0 @" W) z4 _0 `& M
    第2个:a.{0,n}b
    3 R1 K  D5 g6 _第3个:(.)一\1
    3 L' E9 c* B' y7 t. h$ f! x严格一点,要求汉字的话就是 ([\x{4E00}-\x{9FFF}])一\1
    & M# U2 W/ e! M+ Z# e8 d! P0 ?6 e" L6 n+ ^+ K
    前面两个不知道你要求严不严格:相隔的这 n 个字符中能不能有 a, b存在,能的话就是上面的,不能的话就是:a[^ab]{n}b

    评分

    1

    查看全部评分

    该用户从未签到

    发表于 2019-12-9 22:38:39 | 显示全部楼层
    “A一A”(笑一笑,跑一跑,等等)好像做不了
  • TA的每日心情
    奋斗
    2022-6-1 19:02
  • 签到天数: 377 天

    [LV.9]以坛为家II

    发表于 2019-12-9 22:50:58 | 显示全部楼层
    1和2,那个数字n套用在正则里的{m,n}里,很容易呀,比如:“你”和“好”,隔20个字符,你.{20}好- Y  Y) i/ d  U: S: J4 V- l
    换行或者啥的按实际情况再考虑3 A% g) D* v- i5 F$ h
    3,没明白你的意思
  • TA的每日心情
    擦汗
    2023-2-15 04:29
  • 签到天数: 72 天

    [LV.6]常住居民II

     楼主| 发表于 2019-12-9 22:51:47 | 显示全部楼层
    感谢上面几位指教。改日我会自己试验。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    发表于 2019-12-9 22:51:50 | 显示全部楼层
    (3)如何搜索包含“A一A”(笑一笑,跑一跑,等等)格式的行?8 s* W8 [. B: H  I6 V' t# J4 a

    & k# b0 Z8 p3 n1 Y(.)一\1
  • TA的每日心情
    擦汗
    2023-2-15 04:29
  • 签到天数: 72 天

    [LV.6]常住居民II

     楼主| 发表于 2019-12-9 22:52:49 | 显示全部楼层
    simonfire 发表于 2019-12-9 22:50
    * B$ [8 [$ k; w1 {: U4 c% g0 X1和2,那个数字n套用在正则里的{m,n}里,很容易呀,比如:“你”和“好”,隔20个字符,你.{20}好& q$ R# @  x  k
    换行或者 ...

    * C3 c+ B2 G# w' [2 p1 L" R# \关于3,我的意思是说,把所有带“跑一跑”“笑一笑”“跳一跳”这种“字+“一”+字(前后相同)”的行筛出来,按照前面几位的意见似乎做不到。

    点评

    上面几乎都可以,是指正则表达式。你不太会用emeditor。新版的筛选功能太好了,还可以反向筛选。合乎或者不合乎条件的行,立马看得到。  发表于 2019-12-10 14:43
  • TA的每日心情
    开心
    2019-5-18 22:39
  • 签到天数: 158 天

    [LV.7]常住居民III

    发表于 2019-12-9 22:59:44 | 显示全部楼层
    共同研习 发表于 2019-12-9 22:52
    % c$ C0 J! N. I/ d) b' z关于3,我的意思是说,把所有带“跑一跑”“笑一笑”“跳一跳”这种“字+“一”+字(前后相同)”的行筛 ...
    7 b+ b, S- B% S, H' J; d4 X& f
    你是要得到满足条件的行的行号这种或类似东西吗?
  • TA的每日心情
    奋斗
    2022-6-1 19:02
  • 签到天数: 377 天

    [LV.9]以坛为家II

    发表于 2019-12-9 23:19:37 | 显示全部楼层
    共同研习 发表于 2019-12-9 22:52
    ; L3 l4 R" G9 }3 _关于3,我的意思是说,把所有带“跑一跑”“笑一笑”“跳一跳”这种“字+“一”+字(前后相同)”的行筛 ...

    " ?$ v1 E( L! A; ]^.*?(.)一\1.*?\n\r+ i0 j2 A* z7 b1 L# K
    这个应该能匹配整行,不过细节部分还得自己把握呀,想学习就多试多看,都是这么过来的
  • TA的每日心情
    擦汗
    2023-2-15 04:29
  • 签到天数: 72 天

    [LV.6]常住居民II

     楼主| 发表于 2019-12-9 23:21:45 | 显示全部楼层
    simonfire 发表于 2019-12-9 23:19; L; v6 d( C( f: ^! t- B' g1 w
    ^.*?(.)一\1.*?\n\r
    , |& s2 e3 ?! ?这个应该能匹配整行,不过细节部分还得自己把握呀,想学习就多试多看,都是这么过来 ...
    4 r7 \; z4 ]1 Q4 p) k0 H. j1 T
    改日我会自己试验的。9 {9 y- [) O' w2 Y4 w
    其实能匹配一行的一部分,利用书签功能,就相当于做到匹配行了。
    您需要登录后才可以回帖 登录 | 免费注册

    本版积分规则

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

    GMT+8, 2024-4-26 11:31 , Processed in 0.083360 second(s), 11 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2023, Tencent Cloud.

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