Python正则表达式模式匹配抛出错误,带有连字符

2024-05-23 17:15:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用正则表达式从字符串中提取一个模式-

\"([a-zA-Z0-9/-_\"]+)\""

command = '"custom-ts-name": "asdf-somenum"'
search_string = "\"custom-ts-name\": \"([a-zA-Z0-9/-_\"]+)\""
pattern = re.compile(search_string)
ts_name = pattern.findall(command)[0]

除了结果字符串asdf-somenum中包含hypen外,它大部分时间都有效。你知道吗

我在regex-\"([a-zA-Z0-9/-_\"]+)\""中的方括号之间添加了连字符,以解决这个问题,但不确定为什么它仍然崩溃?你知道吗


Tags: 字符串nameresearchstringcustom模式command
1条回答
网友
1楼 · 发布于 2024-05-23 17:15:02

-内部字符集具有从到的特殊含义。例如,您使用的a-z表示所有小写字母。您可以将破折号置于第一个/最后一个位置,也可以将其转义:

\"([a-zA-Z0-9/_\"-]+)\""

相关问题 更多 >