当前位置: 首页 > 面试题库 >

为什么这个正则表达式不起作用({m,n})?

赖运珧
2023-03-14
问题内容

试图了解正则表达式,我在重复的部分:{m, n}

我有以下代码:

>>> p = re.compile('a{1}b{1, 3}')
>>> p.match('ab')
>>> p.match('abbb')

如您所见,两个字符串都不匹配该模式。为什么会这样呢?


问题答案:

您不应该在逗号后加空格,这{1}是多余的。



 类似资料:
  • 问题内容: 我正在做一个小的javascript方法,该方法会接收到一个点列表,并且我必须阅读这些点才能在Google地图中创建多边形。 我在表格上收到这些要点: (lat,long),(lat,long),(lat,long) 因此,我完成了以下正则表达式: 我已经使用RegexPal和收到的确切数据进行了测试: 并且它可以正常工作,所以为什么当我在JavaScript中添加此代码后,结果中会收

  • 问题内容: 在下面的代码段中,匹配结果中的 非捕获组应被忽略, 结果应该是。 但是,我得到了匹配结果。仅当我指定group(2)时才显示。 问题答案: 并返回整个比赛。随后的组是实际的捕获组。 如果您想要相同的行为:

  • 问题内容: 很简单的一行: 失败与: 而扩展为: 工作良好。 问题答案: 您使用错误。使用这种方式: 通用形式为:

  • 问题内容: 我知道进行解析时,我应该理想地删除所有空格和换行符,但是我只是为了快速解决此问题,所以不知道为什么它不起作用。带有“ #### 1”之类的包装器的文档,并尝试基于此进行解析,但是无论我尝试如何,它都无法正常工作,我认为我正确地使用了多行。 这根本不会返回任何结果: 问题答案: 尝试(当然也可以)。 此正则表达式将返回包含节号和节内容的元组。 对于您的示例,这将返回。 (顺便说一句:您的

  • 问题内容: 我有一个正则表达式: 这应该与该字符串匹配并返回三个捕获(根据Rubular) 这是我的代码: 当有三个时,此打印输出1(组),所以我只能这样做,只会返回32。 问题答案: 调用查找匹配的 下一个 实例,如果没有更多实例,则返回false。尝试调用它三次,看看是否有所有预期的组。 为了澄清,正在尝试 在正则表达式中 找到第一个组 表达式 。您的正则表达式中只有一个这样的组表达式,因此永

  • 根据我的理解。匹配正则表达式中的几乎所有字符。那么,如果我想匹配任何字符,包括新行,为什么[.\n]*不起作用?