解释正则表达式

时间:2019-07-16 11:10:13

标签: python regex dataframe

这是我的数据框...

Status1Day  labels
0       0.0
1   RAC 13  1.0
2   WL 14   0.0
3   GNWL 15 0.0
4   RLWL 16 0.0
5   PQWL 17 0.0
6   REGRET/ 0.0
7       0.0
8       1.0

在python中运行以下行

df['Status1Day'].replace(regex=True, inplace=True, to_replace=r'[^W/L\d\s,].*', value= r'0')

结果是

Status1Day  labels
0       0.0
1   0   1.0
2   WL 14   0.0
3   0   0.0
4   0   0.0
5   0   0.0
6   0   0.0
7       0.0
8       1.0

有人可以帮忙r'[^ W / L \ d \ s,]。*'吗?

1 个答案:

答案 0 :(得分:0)

[^W/L\d\s,].*的意思是any character that is not W, /, L, digit, whitespace, ','(comma) and all characters after that (except \n)

基本上,这一行代码不会更改包含W, /, L, whitespace and ',' (comma)的字符串的开头,并将其他所有内容都更改为0。

您还可以在regex101.com上看到说明。