问题描述
我有这个特定的字符串:氧化标记(2-3,20mm-110mm),在数据框列中。 括号之间的文本可以是任何内容。
我尝试通过以下代码提取此内容:
str.extract('(Oxidation mark )[\(][.]*[\)]')
但它给予 NaN
.
解决方法
你可以使用
\b(Oxidation\s+mark\s*\([^()]*\))
参见regex demo。
详情
-
\b
- 一个词边界 -
(Oxidation\s+mark\s*\([^()]*\))
- 第 1 组:-
Oxidation
- 一个词 -
\s+
- 一个或多个空格 -
mark
- 另一个词 -
\s*
- 零个或多个空白字符 -
\([^()]*\)
-(
,除(
和)
之外的零个或多个字符,然后是)
字符。
-