<p>对于一个学校项目,我正在Kaggle上开发kickstarter数据集;
<a href="https://www.kaggle.com/kemical/kickstarter-projects" rel="nofollow noreferrer">https://www.kaggle.com/kemical/kickstarter-projects</a></p>
<p>在“name”变量中,有几个标题之间有空格;
e、 g.实例373<strong>“C R O S T O W N”</strong></p>
<p>我整天都在用一些正则表达式来重新划分多余的空格,并试图让它看起来像一个普通的单词。虽然我认为这是一个经常发生的问题,但大多数正则表达式内容都是添加空格,或者添加双空格。永远不要做这个特定的任务</p>
<p>我尝试了几种方法来描述需要删除的确切空格类型,挑出要保留为一组的字符,并将它们用作替换字符串。虽然它看起来应该可以工作,但我的数据没有改变</p>
<ul>
<li>长正则表达式,用于标识以空格+单大写形式书写的单词(为此尝试了几种不同的形式)</li>
<li>r'\2\4'表示第二组和第四组(第一个和第二个字母字符)</li>
</ul>
<p/><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
<div^{cl2}$
<pre class="snippet-code-html lang-html prettyprint-override"><code>Names_fixed = []
for i in Name_New:
Names_fixed.append(re.sub(r'(\s|^)([A-Z])(\s)(A-Z)\s/g', r'\2\4', i))</code></pre>
</div>
</div>
<p>因为我对regex还是一个新手,向社区寻求帮助;先谢谢你</p>
<p>如果你的目标只是删除单词中的空格,我不确定你是否真的需要正则表达式</p>
<p>可以像这样使用简单的replace()函数:</p>
<pre><code>x = "C R O S S T O W N"
x = x.replace(' ','')
</code></pre>
<p>您可以在列表中为所有此类单词运行循环</p>