[英]Extract substring between two characters - python DataFrame
字符串定位符', \\s*([^\\.]*)\\s*\\.'
是什么意思', \\s*([^\\.]*)\\s*\\.'
=?
我有一个数据框与从Pandas DataFrame的一列中的2个特殊字符之间提取子字符串相同
并希望提取位于","
和"."
之间的子字符串"."
。 多亏了帖子的回答,一种方法如下:
In [157]: df['Title'] = df.Name.str.extract(r',\s*([^\.]*)\s*\.', expand=False)
In [158]: df
Out[158]:
Name Title
0 Jim, Mr. Jones Mr
1 Sara, Miss. Baker Miss
2 Leila, Mrs. Jacob Mrs
3 Ramu, Master. Kuttan Master
尽管我看到结果是正确的,但是',\\s*([^\\.]*)\\s*\\.'
是什么意思',\\s*([^\\.]*)\\s*\\.'
? 特别是“ *”和“ \\”的含义是什么?
这意味着以下匹配项:
,
(逗号) \\s*
零个或多个空格字符(制表符,空格等) ([^\\.])*
零个或多个不是.
字符.
(点) \\s*
零个或多个空格字符 \\.
(点) 您可以在此处找到有关正则表达式的更多信息。
UPDATE
正如@UnbearableLightness提到的,字符\\
在字符集内多余,以逃避.
(点)。 字符集是[]
之间定义的任何字符。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.