Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何检查字符串是否在$sign后面包含数字字符,不包括空格_Python_Pandas - Fatal编程技术网

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