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

Python正则表达式:仅当字符串跟随大括号时才匹配它

颛孙轩昂
2023-03-14

我有以下字符串

'\n    query {\n      allEmployees(first: 2) {\n        edges {\n          node {\n            name\n            department {\n              name\n            }\n          }\n        }\n      }\n    }\n'

我只想匹配allEmployees,如果它是在一个卷发括号之后。如何使用python实现这一点。我尝试了以下方法,但没有效果:

import re
s = '\n    query {\n      allEmployees(first: 2) {\n        edges {\n          node {\n            name\n            department {\n              name\n            }\n          }\n        }\n      }\n    }\n'
pattern = re.compile(r'\{[.]*(\w+)')
x = pattern.search(s)

目标结果将是简单的所有员工(不包括花括号)。

共有1个答案

冯和硕
2023-03-14

在没有换行符的字符串上搜索要容易得多,如果它们不重要:

re.search(r'{.*?(\w+)', s.replace('\n', '')).groups()  # returns ('allEmployees',)
 类似资料:
  • 问题内容: 我在尝试将我的javascript regex经验转移到Python时遇到了麻烦。 我只是想让它工作: …但是它打印无。如果我做: 它匹配…默认情况下是否匹配字符串的开头?当匹配时,如何使用结果? 我如何进行第一场比赛?是否有比python网站提供的文档更好的文档? 问题答案: 隐式添加到您的正则表达式的开头。换句话说,它仅在字符串的开头匹配。 将在所有位置重试。 一般来说,建议您在需

  • 上面的正则表达式返回括号之间的文本。 如: 如何重写上面的正则表达式,所以我提供了一个类似的字符串,它将返回。i、 e带括号的部分,其中包含大括号中的字符串。

  • 我正在使用这段代码使用正则表达式拆分字符串 该代码适用于我拥有的几乎所有字符串,但我面临着这两个字符串的问题:和。似乎模式不匹配,我认为是因为特殊字符和。 我的预期结果和。

  • 问题内容: 我有类似的东西 商店 结束行像1商店..我想匹配,它使用python正则表达式。 我尝试了类似的方法, 但是没有用。 编辑:添加代码,我试过 请帮助。 谢谢吉乔 问题答案: 或多或少直接回复您的评论 尝试这个 解决方案是使用,而不是使用后者,因为后者试图将整个字符串与regexp匹配,而前者只是试图在字符串内部查找与表达式匹配的子字符串。

  • 问题内容: 匹配字符串中的’(’的正则表达式是什么? 以下是场景: 我有一串 我想使用正则表达式拆分字符串。为此,我正在使用 但是我收到以下异常。 转义似乎不起作用。 问题答案: 两种选择: 首先,你可以使用转义 回 斜线- 另外,由于它是单个字符,因此您可以将其放入不需要转义的字符类中-

  • 问题内容: 我正在尝试解决此CodingBat问题: 如果给定的字符串包含外观“ xyz”,而xyz并非直接以句点(。)开头,则返回true。因此,“ xxyz”算在内,但“ x.xyz”算不上。 xyzThere(“ abcxyz”)→真 xyzThere(“ abc.xyz”)→假 xyzThere(“ xyz.abc”)→真 我正在尝试使用正则表达式解决此问题,但不确定如何处理要求。 我没有