我有一个样本字符串 <alpha.Customer[cus_Y4o9qMEZAugtnW] active_card=<alpha.AlphaObject[card] ...>, created=1324336085, description='Customer for My Test App', livemode=False>
我只想要该值cus_Y4o9qMEZAugtnW
而不是card
(在另一个内部[]
)
如何在Python中以最简单的方式做到这一点?也许通过使用RegEx(我不擅长)?
怎么样:
import re
s = "alpha.Customer[cus_Y4o9qMEZAugtnW] ..."
m = re.search(r"\[([A-Za-z0-9_]+)\]", s)
print m.group(1)
对我来说,这打印:
cus_Y4o9qMEZAugtnW
请注意,调用会re.search(...)
找到与正则表达式的第一个匹配项,因此[card]
除非您再次重复搜索,否则它将不会找到。
编辑:
这里的正则表达式是python原始字符串文字,基本上意味着反斜杠不会被视为特殊字符,而是会原样传递给re.search()
方法。正则表达式的部分包括:
\[
匹配文字[
字符(
开始一个新的小组[A-Za-z0-9_]
是与任何字母(大写或小写),数字或下划线匹配的字符集+
与前面的元素(字符集)匹配一次或多次。)
结束小组\]
匹配文字]
字符编辑: 正如DK所指出的,正则表达式可以简化为:
m = re.search(r"\[(\w+)\]", s)
由于\w
表示特殊的顺序,与[a-zA-Z0-9_]
取决于re.LOCALE
和re.UNICODE
设置的含义相同。
本文向大家介绍颠倒括在Python中括号内的子字符串的程序,包括了颠倒括在Python中括号内的子字符串的程序的使用技巧和注意事项,需要的朋友参考一下 假设我们有一个小写的字符串s,其中包含字母和括号“(”和“)”。我们必须以递归的方式反转括号中的每个字符串,并返回结果字符串。 因此,如果输入类似于s =“ back(aps)ce”,则输出将为“ backspace”。 为了解决这个问题,我们将遵
问题内容: 如何获取字符串中的括号值。 我只需要AED文字。谢谢 问题答案: 编译并打印“ AED”。甚至适用于多个括号: 正则表达式表示: :字符 :开始比赛组 :以下字符之一 :不是以下字符 :与前面的一样,这表示“除” 以外的所有字符 :集合中的其他内容之一 :停止比赛组 :字面量闭式括号
期望的行为 我有一个输入验证,除其他外,测试长度(
问题内容: 因此,作为我的应用程序的一部分,我需要它从文本文件中读取数据,并在大括号之间获取元素。 例如: 服务器_1 { / directory1 / directory2 } 服务器_2 { /目录1 /目录2 } 然后类似if ,打印目录。 亲切的问候, 问题答案: 您可以尝试以下操作: 说明 匹配任何字符 量词-匹配零到无限次,次数尽可能少,根据需要扩展(延迟) 从字面上匹配字符(区分大小
当我使用之类的东西时,它仍然会触发,就像连字符无效一样。我尝试了和
问题内容: 我想使用正则表达式获取所有括号内的所有子字符串。 作为字符串“ foo(bar)foo(baz)golang”的示例,我想要“ bar”和“ baz” 在python中我可以做 怎么做呢? 问题答案: 的软件包不支持零宽度环顾四周。您可以通过以下功能利用捕获的分组: 输出: 正则表达式: 匹配文字 匹配串高达旁边,并把比赛以捕获组,在这里你可以使用非greeedy比赛太 匹配文字 去游