我希望我的程序检查特定模式的用户输入。我已经指出在它旁边使用一个标签,这个特定的TextBox1必须采用这种格式“XX / XX”(其中XX必须是数字,并且可以包含无限制的字符)。
然而,没有编码方检查以检查用户输入。目前我在互联网上搜索的解决方案正在使用
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table width="652" border="0" cellpadding="5" cellspacing="0">
<tr>
<td><strong>Product</strong></td>
<td><strong>Product Price</strong></td>
<td><strong>How much you want?</strong></td>
<td><strong>Total Price</strong></td>
</tr>
<tr>
<td width="210">Fruit:</td>
<td width="216">$ 10</td>
<td width="204"><input name="number" type="number" id="number" value="5" onchange="updatePrice()"></td>
<td width="204">$ 50 <span id="num-fruits">0</span> </td>
</tr>
<tr>
<td>Drinks:</td>
<td>$ 25</td>
<td><input name="number2" type="number" id="number2" value="25"></td>
<td>$ 625</td>
</tr>
<tr>
<td>Cards:</td>
<td>$ 5</td>
<td><input type="number" name="number3" id="number3"></td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td>Total price of all:</td>
<td>$ 675</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
</table>
</center>
</body>
</html>
唯一的问题是它只接受一位数字。例如5/4,我想要的是动态输入,例如123/1或9/12或999999/30000。提前谢谢。
答案 0 :(得分:0)
你快到了,
sMatch = TextBox1.Text Like "\d{1,}/\d{1,}"
或
sMatch = TextBox1.Text Like "[0-9]{1,}/[0-9]{1,}"
好的参考来自:https://msdn.microsoft.com/en-us/library/az24scfc(v=vs.110).aspx
\ d匹配任何十进制数字 {n,}匹配前一个元素至少n次
答案 1 :(得分:0)
我认为在这种情况下使用Masked Text boxes会更好。
或者你也可以尝试这个
Sub Main()
Dim regex As Regex = New Regex("[0-9][0-9]/[0-9][0-9]")
Dim match As Match = regex.Match("x1/1x2")
If match.Success Then
Console.WriteLine(match.Value)
Else
Console.WriteLine("Does not match")
End If
Console.ReadKey()
End Sub