我在数据帧中有一些看起来像这样的数据:
Japanese
--------
明日|Adverb の 天気|Weather は なんですか
这里,明日标有副词,天気标有天气。
使用Pandas和正则表达式,我正在寻找一种方法来附加{}
围绕具有日语,管道和英语的字符,但不是仅限于日语。我尝试使用以下正则表达式,但不断收到语法错误:
df。['Japanese'] = df ['Japanese']。str.append('(。+?\ | [A-Za-z _] +)\','{(。+?\ | [A-Za -z _] +)}')
所需的输出如下(同时寻找一种同时删除所有空格的方法......如果不可能,我可以在之后这样做):
Japanese
--------
{明日|Adverb}の{天気|Weather}はなんですか
谢谢!
你可以使用str.replace
df['Japanese'] = df['Japanese'].str.replace(r'(\w*\|[a-zA-Z]+)', r'{\1}', regex=True)
# To remove white space use
df.Japanese.str.replace('\s',"", regex=True, inplace=True)
# Output:
0 {'明日|Adverb'}の{'天気|Weather'}はなんですか
Name: Japanese, dtype: object
我想你想要这个
df['Japanese'].replace(r'(.+?\|[A-Za-z_]+)','{\g<0>}', inplace=True, regex=True)
\g<0>
是对(
和)
内部组的引用
不幸的是我无法弄清楚如何在一行中替换空格,所以之后你想做
df['Japanese'].replace('\s','', inplace=True,regex=True)