Python 如何检查字符串是否在$sign后面包含数字字符,不包括空格
我用它来检查Python 如何检查字符串是否在$sign后面包含数字字符,不包括空格,python,pandas,Python,Pandas,我用它来检查$符号是否存在并替换它 string = '\$' df= df[df['text'].str.contains(string,case=False)] df['text'] = df['text'].str.replace(string, " dollar ",regex=True) 但我只想在下一个字符是number(不包括空格)时替换 样本df id text 1 buy for $1230 2 buy for $1,230 3 buy for
$
符号是否存在并替换它
string = '\$'
df= df[df['text'].str.contains(string,case=False)]
df['text'] = df['text'].str.replace(string, " dollar ",regex=True)
但我只想在下一个字符是number(不包括空格)时替换
样本df
id text
1 buy for $1230
2 buy for $1,230
3 buy for $ 1230
4 buy for $ 1,230
5 buy for $abc
预期产出:
id text
1 buy for dollar 1230
2 buy for dollar 1,230
3 buy for dollar 1230
4 buy for dollar 1,230
5 buy for $abc
编辑:如果我还了解了检查下一个字符是否是数字(包括空格)的解决方案,这将是一件好事。
您可以使用,这样$
只有在后面跟一个数字,甚至前面有一个或多个空格时才会被替换:
df['text'] = (df['text'].str.replace(r'(\$)(?=\d|(?:\s+(?=\d)))',
" dollar ", regex=True))
id text
0 1 buy for dollar 1230
1 2 buy for dollar 1,230
2 3 buy for dollar 1230
3 4 buy for dollar 1,230
4 5 buy for $abc