查看: 525|回复: 10
打印 上一主题 下一主题

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

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

    [LV.6]常住居民II

    143

    主题

    628

    回帖

    4295

    积分

    贡士

    Rank: 6Rank: 6

    积分
    4295
    跳转到指定楼层
    1
    发表于 2019-12-9 22:13:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 共同研习 于 2019-12-10 17:17 编辑

    我使用的是emeditor,有时常规搜索不能满足需求,需要正则表达式,有几个问题我不懂,希望高人指教:
    (1)给定两个字符(指定顺序)以及一个数字n,检索所有的行,要求包含这两个字符且两个字符间正好相隔n个字符。
    (2)给定两个字符(指定顺序)以及一个数字n,检索所有的行,要求包含这两个字符且两个字符间隔不大于n个字符。
    (3)如何搜索包含“A一A”(笑一笑,跑一跑,等等)格式的行?---------------------
    感谢大家的回复
  • TA的每日心情
    开心
    2019-5-18 22:39
  • 签到天数: 158 天

    [LV.7]常住居民III

    11

    主题

    858

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    18138
    推荐
    发表于 2019-12-9 22:50:53 | 只看该作者
    如果两个字符是 a 和 b
    第1个:a.{n}b
    第2个:a.{0,n}b
    第3个:(.)一\1
    严格一点,要求汉字的话就是 ([\x{4E00}-\x{9FFF}])一\1

    前面两个不知道你要求严不严格:相隔的这 n 个字符中能不能有 a, b存在,能的话就是上面的,不能的话就是:a[^ab]{n}b

    评分

    1

    查看全部评分

    该用户从未签到

    539

    主题

    3046

    回帖

    25万

    积分

    翰林院编修

    Rank: 11Rank: 11Rank: 11Rank: 11

    积分
    251476

    翰林院专用章灌水大神章笑傲江湖章小蜜蜂章管理组专用章

    2
    发表于 2019-12-9 22:38:39 | 只看该作者
    “A一A”(笑一笑,跑一跑,等等)好像做不了
  • TA的每日心情
    奋斗
    2022-6-1 19:02
  • 签到天数: 377 天

    [LV.9]以坛为家II

    27

    主题

    556

    回帖

    15万

    积分

    状元

    喜欢折腾,但能力有限

    Rank: 9Rank: 9Rank: 9

    积分
    150901

    灌水大神章笑傲江湖章管理组专用章

    4
    发表于 2019-12-9 22:50:58 | 只看该作者
    1和2,那个数字n套用在正则里的{m,n}里,很容易呀,比如:“你”和“好”,隔20个字符,你.{20}好
    换行或者啥的按实际情况再考虑
    3,没明白你的意思
  • TA的每日心情
    擦汗
    2023-2-15 04:29
  • 签到天数: 72 天

    [LV.6]常住居民II

    143

    主题

    628

    回帖

    4295

    积分

    贡士

    Rank: 6Rank: 6

    积分
    4295
    5
     楼主| 发表于 2019-12-9 22:51:47 | 只看该作者
    感谢上面几位指教。改日我会自己试验。
  • TA的每日心情
    开心
    2020-1-5 08:04
  • 签到天数: 50 天

    [LV.5]常住居民I

    307

    主题

    854

    回帖

    3万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    34219

    QQ 章

    6
    发表于 2019-12-9 22:51:50 | 只看该作者
    (3)如何搜索包含“A一A”(笑一笑,跑一跑,等等)格式的行?

    (.)一\1
  • TA的每日心情
    擦汗
    2023-2-15 04:29
  • 签到天数: 72 天

    [LV.6]常住居民II

    143

    主题

    628

    回帖

    4295

    积分

    贡士

    Rank: 6Rank: 6

    积分
    4295
    7
     楼主| 发表于 2019-12-9 22:52:49 | 只看该作者
    simonfire 发表于 2019-12-9 22:50
    1和2,那个数字n套用在正则里的{m,n}里,很容易呀,比如:“你”和“好”,隔20个字符,你.{20}好
    换行或者 ...

    关于3,我的意思是说,把所有带“跑一跑”“笑一笑”“跳一跳”这种“字+“一”+字(前后相同)”的行筛出来,按照前面几位的意见似乎做不到。

    点评

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

    [LV.7]常住居民III

    11

    主题

    858

    回帖

    1万

    积分

    状元

    Rank: 9Rank: 9Rank: 9

    积分
    18138
    8
    发表于 2019-12-9 22:59:44 | 只看该作者
    共同研习 发表于 2019-12-9 22:52
    关于3,我的意思是说,把所有带“跑一跑”“笑一笑”“跳一跳”这种“字+“一”+字(前后相同)”的行筛 ...

    你是要得到满足条件的行的行号这种或类似东西吗?
  • TA的每日心情
    奋斗
    2022-6-1 19:02
  • 签到天数: 377 天

    [LV.9]以坛为家II

    27

    主题

    556

    回帖

    15万

    积分

    状元

    喜欢折腾,但能力有限

    Rank: 9Rank: 9Rank: 9

    积分
    150901

    灌水大神章笑傲江湖章管理组专用章

    9
    发表于 2019-12-9 23:19:37 | 只看该作者
    共同研习 发表于 2019-12-9 22:52
    关于3,我的意思是说,把所有带“跑一跑”“笑一笑”“跳一跳”这种“字+“一”+字(前后相同)”的行筛 ...

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

    [LV.6]常住居民II

    143

    主题

    628

    回帖

    4295

    积分

    贡士

    Rank: 6Rank: 6

    积分
    4295
    10
     楼主| 发表于 2019-12-9 23:21:45 | 只看该作者
    simonfire 发表于 2019-12-9 23:19
    ^.*?(.)一\1.*?\n\r
    这个应该能匹配整行,不过细节部分还得自己把握呀,想学习就多试多看,都是这么过来 ...

    改日我会自己试验的。
    其实能匹配一行的一部分,利用书签功能,就相当于做到匹配行了。