在Python中使用不同长度的字符串中的逗号之后获取第一个单词

时间:2016-08-18 14:44:08

标签: python split

我有一个像这样的变量:

**Name**
Heikkinen, Miss. Laina
Futrelle, Mrs. Jacques Heath (Lily May Peel)
Allen, Mr. William Henry
...

我想在逗号之后提取第一个单词。

这对我有用,但需要2个数据帧步骤:

train_df1=train_df['Name'].str.split(',',expand=True)
train_df2=train_df1[1].str.split(' ',expand=True)[1]

train_df包含变量'Name'

4 个答案:

答案 0 :(得分:1)

您可以使用正则表达式来实现此目的。

import re
s="Heikkinen, Miss. Laina"
re.findall(r'(?<=,\s)[a-z]+',s,re.I)

如果字符串的格式是一致的(单词后跟一个,后跟一个空格后跟空格分隔的单词),请使用

[i for i in s.split()][1]

答案 1 :(得分:0)

使用str.partitionstr.split

s = 'Heikkinen, Miss. Laina'
s.partition(',')[-1].split()[0] # 'Miss.'

答案 2 :(得分:0)

只是添加一个衬垫,假设你的字符串被换行符分隔,第一行是某种标题:

salutations = [x.split(", ")[1].split(".")[0] for x in string.split("\n")[1:]]

如果您不想执行正则表达式解决方案

答案 3 :(得分:0)

i = str.index(&#34;,&#34;) newStr = str [i:]