使用括号从 python pandas 数据框列中提取模式的正则表达式
Regular expression to extract pattern form python pandas dataframe column with parenthesis
我有这个特定的字符串:数据框列中的氧化标记 (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*
- 零个或多个空白字符
\([^()]*\)
- (
,除 (
和 )
之外的零个或多个字符,然后是 )
个字符。
我有这个特定的字符串:数据框列中的氧化标记 (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*
- 零个或多个空白字符\([^()]*\)
-(
,除(
和)
之外的零个或多个字符,然后是)
个字符。