擅长:python、mysql、java
<p>如果数字总是以+开头,并且您希望不使用它来获取完整的数字,请使用:</p>
<pre><code>\+(\d+(?:\s\d+)*)\b
</code></pre>
<p>它将返回(从您的示例中):<code>12 555 660 000</code></p>
<p>在线查看:<a href="https://regex101.com/r/aEeIgK/2" rel="nofollow noreferrer">https://regex101.com/r/aEeIgK/2</a></p>
<p>说明:</p>
<ul>
<li><code>\+</code>在比赛开始前先确定一个+开始。转义为+是regexp量词。你知道吗</li>
<li><code>\b</code>以单词边界结尾(因此,如果是以数字开头的混合字符串,则它不会是匹配的一部分)。你知道吗</li>
<li><code>(\d+(?:\s\d+)*)</code>带括号<code>(...)</code>是匹配的内容。
<ul>
<li><code>\d+</code>开头的一个或多个数字是桅杆。<code>\d</code>是数字;<code>+</code>一个或多个量词。你知道吗</li>
<li><code>(?:\s\d+)*</code>可选(零个或更多)字符串,以空格<code>\s</code>开头,后跟数字。你知道吗</li>
<li><code>(?:...)</code>是不匹配的括号。你知道吗</li>
<li><code>*</code>表示零或更多的量词。你知道吗</li>
<li><code>\s</code>空白(只有一个)。你知道吗</li>
</ul></li>
</ul>