1

我一直在尝试从 HTML 页面中提取一个数字,这个数字是一个月,需要有 2 个整数。我经常得到 2 而不是 02。我正在寻求帮助以找到一种方法来验证它是否是 2 位数字,如果不是则添加 0。

变量名:${ExpiryMonth}

当前拉取值为 2 的值为 02 如果值为 12 则希望它进行验证和批准。

4

2 回答 2

0

我认为您可以使用正则表达式进行验证。对于寻找两位数的情况,您将使用regexp:[0-9][0-9]

现在我还不习惯使用 Selenium 变量,因此您可能正在寻找另一种语法,但以下内容可以验证正则表达式是否有效。第一个verifyEval将通过,第二个将失败:

<tr>
  <td>store</td>
  <td>02</td>
  <td>twodigits</td>
</tr>
<tr>
  <td>verifyEval</td>
  <td>storedVars['twodigits']</td>
  <td>regexp:[0-9][0-9]</td>
</tr>
<tr>
  <td>store</td>
  <td>2</td>
  <td>onedigit</td>
</tr>
<tr>
  <td>verifyEval</td>
  <td>storedVars['onedigit']</td>
  <td>regexp:[0-9][0-9]</td>
</tr>
于 2013-10-23T14:44:32.347 回答
0

上面的语法略有错误,更好的匹配方法如下

verifyEval | twodigit | ^[0-9]{2}$

verifyEval | onedigit | ^[0-9]$

说明:^开头的 表示它必须以数字 0-9 开头。最后$的 表示它后面不能有任何东西。

regex:[0-9]将传递包含一个(或多个)数字的任何字符串 - 例如xsdkjabfijewqbrjewbrew324sakfdbsa

同样[0-9][0-9] or [0-9]{2}会传递任何带有 2 位数字的字符串。

于 2015-09-25T10:02:50.230 回答