【问题标题】:How to search this kind of pattern in regex [duplicate]如何在正则表达式中搜索这种模式[重复]
【发布时间】:2018-09-02 05:12:34
【问题描述】:

这是我想要获取匹配指定字符串的正则表达式的示例文本,正则表达式将限定不匹配条件

1abc.def.ghi(匹配)

abc.111.ghi(匹配)

123.123.123.132.123.123(匹配)

123.123.123.132.123.123.123.123.123.132.123.123.123.123.123.132.123.123(匹配)

123.123.123.132.123.12335(不匹配)

7645.123.111.887(不匹配)

【问题讨论】:

  • 你自己试过什么?你到底卡在哪里了?
  • 请张贴minimal reproducible example 的尝试示例,并具体说明您遇到的问题

标签: python regex regular-language qregularexpression


【解决方案1】:

任务由示例定义。

让我们尝试将其形式化:

所有有效匹配只包含来自集合 [123abcdefghi.] 的字符;

用点分隔的 3 个字符的意义值得怀疑,因为一个有效示例连续有 4 个字符。假设我们可以用点分隔任意数量的字符。

尚不清楚我们是否可以在任何组中使用有效范围内的任何字母; 假设所有组都是等价的

那么,重复组将是 [123abcdefghi\.]+

添加开始和结束锚点以仅匹配完整的行:

r='^[123abcdefghi.]+$'

这是对这组示例的多种可能理解之一。

【讨论】:

    猜你喜欢
    • 2018-05-18
    • 2019-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-18
    • 2023-01-30
    • 2021-02-09
    相关资源
    最近更新 更多