Pythonic way to rewrite the following C++ string processing code
<p>Previous, I am having a C++ string processing code which is able to do this.</p>

<pre><code>input -&gt; Hello 12
output-&gt; Hello

input -&gt; Hello 12 World
output-&gt; Hello World

input -&gt; Hello12 World
output-&gt; Hello World

input -&gt; Hello12World
output-&gt; HelloWorld
</code></pre>

<p>The following is the C++ code.</p>

<pre><code>std::string Utils::toStringWithoutNumerical(const std::string&amp; str) {
    std::string result;

    bool alreadyAppendSpace = false;
    for (int i = 0, length = str.length(); i &lt; length; i++) {
        const char c = str.at(i);
        if (isdigit(c)) {
            continue;
        }
        if (isspace(c)) {
            if (false == alreadyAppendSpace) {
                result.append(1, c);
                alreadyAppendSpace = true;
            }
            continue;
        }
        result.append(1, c);
        alreadyAppendSpace = false;
    }

    return trim(result);
}
</code></pre>

<p>May I know in Python, what is the Pythonic way for implementing such functionality? Is regular expression able to achieve so?</p>

<p>Thanks.</p>
