擅长:python、mysql、java
<p>您可以通过读取表达式并逐步选择适当的字符来生成示例字符串。在</p>
<p>例如,1\d2\d2:</p>
<pre>
1\d2\D2 -> 1
^ 1 means a literal number 1
1\d2\D2 -> 17
^^ \d means any digit (0-9). let's choose 7.
1\d2\D2 -> 172
^ 2 means a literal number 2.
1\d2\D2 -> 172X
^^ \D means anything *but* a digit (0-9). let's choose X
1\d2\D2 -> 172X2
^ 2 means a literal number 2.
</pre>
<p>因此<code>172X2</code>将与<code>1\d2\D2</code>匹配</p>
<p>下一个-<code>^a\w+z$</code>-可以有多个长度:</p>
^{pr2}$
<p>因此<code>a4Q1z</code>将与<code>^a\w+z$</code>匹配。<code>a4z</code>(您可以检查…)</p>
<p>注意,<code>*</code>与<code>+</code>相似,因为你可以跳回并重复,但是<em>也可以</em>这意味着你可以完全跳过左边的内容(换句话说,<code>+</code>表示“至少重复一次”,但是<code>*</code>表示“重复零或更多”(零是跳过)。在</p>
<p><em>更新</em>:</p>
<p><code>[abc]</code>表示选择<code>a</code>、<code>b</code>或{<cd14>}中的任何一个。在</p>
<p><code>x{2,3}</code>表示加<code>x</code>2到3次(类似于<code>+</code>,但有次数限制)。所以,<code>xx</code>或{<cd19>}。在</p>
<p><code>\1</code>有点复杂。你需要找出第一组圆括号内的内容(因为数字是1)并加上它。因此,例如,<code>(\d+)\1</code>将匹配<code>2323</code>,如果您从左到右,并为<code>(\d+)</code>选择{<cd23>}。在</p>