2024-10-03 09:09:24 发布
网友
我想在正则表达式的字符串中找到这个。你知道吗
: [J, BASIC] ? [CINTERMEDIATE] : [D,MEDIUM]
第一个字符可以是“:”或“?” 然后是空白,然后是方括号 方括号内有两个文本块,用逗号和/或空格分隔。逗号或空格可能存在,也可能不存在
这是我写的找到这个的东西
regex = re.compile('[:|?\s[\w[,\s]?\w]]+')
但它只能找到
'C]' 'E]' 'M]'
[:?]\s+\[[^, \]]*[, ]?[^\]]*\]
你可以试试这个图案。看到了吗演示。你知道吗
https://regex101.com/r/bN8dL3/8#python
正则表达式没有将[作为文本处理。。它们被视为特殊字符(字符集)
[
您可以使用以下选项:
[:?]\s*\[\w+(\s*,\s*)?\w+\]
说明:
[:?]
\s*\[
\w+(\s*,\s*)?\w+
\]
见DEMO
编辑:如果要捕获匹配,可以使用:
([:?]\s*\[\w+(?:\s*,\s*)?\w+\])
[:?]\s\[[^\]]+?\]
Debuggex Demo
你可以试试这个图案。看到了吗演示。你知道吗
https://regex101.com/r/bN8dL3/8#python
正则表达式没有将
[
作为文本处理。。它们被视为特殊字符(字符集)您可以使用以下选项:
说明:
[:?]
第一个字符可以是“:”或“?”你知道吗\s*\[
然后是一个空格,然后是方括号\w+(\s*,\s*)?\w+
方括号内有两个文本块,用逗号和/或空格隔开(可选逗号和空格)\]
右括号见DEMO
编辑:如果要捕获匹配,可以使用:
Debuggex Demo
相关问题 更多 >
编程相关推荐