当前位置: 首页 > 知识库问答 >
问题:

正则表达式如何处理正则表达式模式中的^或$?

曾珂
2023-03-14

我正在尝试使用python中的正则表达式。我构建了正则表达式,如下所示。我知道^用于匹配搜索字符串的开头。我已使用包含多个^的匹配模式构建框架,但我不确定re将如何尝试匹配搜索字符串中的模式。

re.match("^def/^def", "def/def")

我预计re会引发错误,关于无效的正则表达式,但它不会引发任何错误,也不会返回任何匹配项。

所以,我的问题是“^def/^def”“$def/$def”是有效的正则表达式吗?

共有1个答案

汪兴旺
2023-03-14

您没有一个无效的正则表达式,<代码> ^ 在字符串的中间有合法用途。当您使用re时。M标志,例如:

定时,模式字符'^'在字符串的开头和每行的开头(紧跟在每个换行符之后)匹配;模式字符'$'在字符串的末尾和每行结束(紧接每个换行符之前)。

还可以创建带有可选组的模式,如果前面的所有模式都匹配空字符串,则后面的^仍将匹配。在无法匹配的地方使用^不是解析器检查的内容,也不会引发错误。

您的特定模式永远不会匹配任何内容,因为中间的^是无条件的,即使启用了多行标志,它前面的/也不可能匹配必需的换行符。

 类似资料:
  • 昨天,我需要向正则表达式添加一个文件路径,创建一个如下所示的模式: 一开始正则表达式不匹配,因为包含几个正则表达式特定的符号,如 或 。作为快速修复,我将它们替换为 和 . 与 . 然而,我问自己,是否没有一种更可靠或更好的方法来清除正则表达式特定符号中的字符串。 Python 标准库中是否支持此类功能? 如果没有,您是否知道一个正则表达式来识别所有正则表达式并通过替代品清理它们?

  • 我需要编写一个具有以下规则的正则表达式: null null 这些示例无效: > 12--11(因为它包含两个连字符) 1-2345(因为它包含5号) <>是字符出现在最后一个位置,那么在字符之前必须有一个数字not hypen。 即11-A(必须不及格)11-1A(必须及格)

  • 我是正则表达式的初学者,并尝试搜索特定的数字模式。以下数据以 XML 格式嵌入。 要求是提取数据(最里面的列表)。在这个例子中,数据从24779开始到24760。注意:每次数据可能不是从“24”开始。因此,我计划通过以下逻辑提取:如果标签名(在本例中:DUT_1_PC)具有非零的有效数据,并且有效数据的计数大于100,用逗号分隔,则提取该列表及其标签名(DUT_1_PC)。 我无法提取所需的数据。

  • 寻找一个java正则表达式函数,如果数组元素列表中的特殊字符出现在前面或后面,则返回true 2-返回False如果任何alpha字符之前和之后从我的数组元素列表我的数组元素wordsList={"TIN","tin"}输入: 1-CardTIN是1111 2-Card-TIN:2222 3-cardtinis3334-Card@TIN@4444 5-CardTIN@55556-TINis9999

  • 有没有人试图描述与正则表达式匹配的正则表达式? 由于重复的关键字,这个主题几乎不可能在网上找到。 它可能在实际应用程序中不可用,因为支持正则表达式的语言通常具有解析它们的方法,我们可以将其用于验证,以及一种在代码中分隔正则表达式的方法,可用于搜索目的。 但是我仍然想知道匹配所有正则表达式的正则表达式是什么样子的。应该可以写一个。

  • 问题内容: 我需要这件事的帮助。查看以下正则表达式: 我想查找这样的词:“自制”,“ aaaa-bbb”而不是“ aaa-bbb”,而 不是 “ aaa–aa–aaa”。基本上,我想要以下内容: 单词-连字符-单词。 它适用于所有内容,但该模式会通过:“ aaa–aaa–aaa”,但不应通过。哪种正则表达式适用于此模式? 问题答案: 可以从表达式中删除反斜杠: 下面的代码应该工作 请注意,您可以使