擅长:python、mysql、java
<p>使用原始字符串文字;Python字符串文字语法和regex都解释反斜杠;<code>\1</code>在Python字符串文字中解释为八进制转义,但在原始字符串文字中不解释:</p>
<pre><code>re.sub(r"([,\w])\n(\w)", r"\1 \2", x)
</code></pre>
<p>另一种方法是将所有反斜杠加倍,这样它们就可以到达regex引擎。你知道吗</p>
<p>请参见Python regex HOWTO的<a href="https://docs.python.org/2/howto/regex.html#the-backslash-plague" rel="nofollow"><em>Backslash plague</em> section</a>。你知道吗</p>
<p>演示:</p>
<pre><code>>>> import re
>>> x = 'the meaning\nof life'
>>> re.sub(r"([,\w])\n(\w)", r"\1 \2", x)
'the meaning of life'
</code></pre>
<p>使用换行符拆分可能更容易;使用<a href="https://docs.python.org/2/library/stdtypes.html#str.splitlines" rel="nofollow">^{<cd2>} method</a>,然后使用<a href="https://docs.python.org/2/library/stdtypes.html#str.join" rel="nofollow">^{<cd3>}</a>重新连接空格:</p>
<pre><code>' '.join(ex.splitlines())
</code></pre>
<p>但无可否认,这并不能区分单词之间的新行和其他地方的额外新行。你知道吗</p>