<blockquote>
<p>it must contain both alphanumeric and slash.</p>
</blockquote>
<p>我知道你可能有1个以上的字母数字符号后跟至少1个<code>/</code>,然后是更多的字母数字符号。您需要将regex更改为<code>/^[a-z\d]+(?:\/[a-z\d]+)+$/i</code>:</p>
<p/><div^{cl1}$&13;
<div^{cl2}$&13;
<pre class="snippet-code-js lang-js prettyprint-override"><code>var message = $('#message').val();
if (!/^[a-z\d]+(?:\/[a-z\d]+)+$/i.test($.trim(message)))
{
$('#message').focus();
alert('invalid message');
}</code></pre>
;
^{pr2}$
;
</div>和13;
</div>和13;
<p><strong>详细信息</strong>:</p>
<ul>
<li><code>^</code>-字符串的开头</li>
<li><code>[a-z\d]+</code>-1个或多个字母或数字</li>
<li><code>(?:\/[a-z\d]+)+</code>-1个或多个序列
<ul>
<li><code>\/</code>-斜杠</li>
<li><code>[a-z\d]+</code>-1个或多个字母或数字</li>
</ul></li>
<li><code>$</code>-字符串结尾</li>
<li><code>/i</code>-不区分大小写的修饰符,这样<code>[a-z]</code>也可以匹配大写的ASCII字母。在</li>
</ul>
<p>如果您的意思是字符串内必须有<code>/</code>和字母数字<em>的任何地方,请使用lookaheads:</p>
<pre><code>/^(?=[a-z\d]*\/)(?=\/*[a-z\d])[a-z\d\/]+$/i
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
</code></pre>
<p>参见<a href="https://regex101.com/r/PyfHGw/1" rel="noreferrer">regex demo</a>。在这里,<code>(?=[a-z\d]*\/)</code>在0+个字母数字后面需要一个<code>/</code>,而<code>(?=\/*[a-z\d])</code>需要0+斜杠后的字母数字。<code>[a-z\d\/]+</code>将匹配1个或多个字母数字或斜杠。在</p>