How to match all unicode alphabetic characters and spaces in a regex?
<p>I am trying to validate place names in python 3/ django forms. I want to get matches with strings like: <code>Los Angeles</code>, <code>Canada</code>, <code>中国</code>, and <code>Россия</code>. That is, the string contains:  </p>

<ul>
<li>spaces</li>
<li>alphabetic characters (from any language)</li>
<li>no numbers</li>
<li>no special characters (punctuation, symbols etc.)  </li>
</ul>

<p>The pattern I am currently using is <code>r'^[^\W\d]+$'</code> as suggested in <a href="https://stackoverflow.com/questions/1673749/how-to-match-alphabetical-chars-without-numeric-chars-with-python-regexp">How to match alphabetical chars without numeric chars with Python regexp?</a>. However it only seems to match like the pattern <code>r'^[a-zA-Z]+$</code>. That is, <code>Россия</code>, <code>Los Angeles</code> and <code>中国</code> do not match , only <code>Canada</code> does.</p>

<p>An example of my code: </p>

<pre><code>import re
re.search(r'^[^\W\d]+$', 'Россия')
</code></pre>

<p>Which returns nothing.</p>