Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.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中使用正则表达式替换字符串的一部分_Python_Regex - Fatal编程技术网

在python中使用正则表达式替换字符串的一部分

在python中使用正则表达式替换字符串的一部分,python,regex,Python,Regex,我有这样的情况,我有像1k,300k,500k\u清洁和更换等字符串 我希望使用regex包将k替换为000,并删除其余字符 我的代码总是抛出错误: renamed=re.sub(r"\b[k]\b",'000',df_VSS[i][0]) 这是我的代码行,如果有任何帮助,我将不胜感激。如果您只需要处理您描述的问题,一个(可能)更简单的解决方案可能是使用 s = my_str.split("k")[0] # get everything before k

我有这样的情况,我有像
1k
300k
500k\u清洁和更换等字符串

我希望使用regex包将
k
替换为
000
,并删除其余字符

我的代码总是抛出错误:

renamed=re.sub(r"\b[k]\b",'000',df_VSS[i][0])

这是我的代码行,如果有任何帮助,我将不胜感激。

如果您只需要处理您描述的问题,一个(可能)更简单的解决方案可能是使用

s = my_str.split("k")[0] # get everything before k
s += "000"

正则表达式可能很棘手,所以我建议您只有在没有找到更简单的解决方案时才使用它。此外,如果您使用正则表达式,网站也会派上用场。

问题是
和数字是单词字符,因此
k
之间以及
1
k
之间没有单词边界

您可以在数字和字母数字字符以外的字符之间匹配
k

重新导入
文本='1k、300k、500k_清洁和更换'
印刷品(再附)(r’(?)?