Selenium分割日期字符串的工作示例

Selenium split date string working example?

本文关键字:工作 字符串 分割 日期 Selenium      更新时间:2023-09-26

我正试图将一个日期字符串(2012年5月4日)拆分为3个子字符串,以便以后进行字符串操作。当我在常规javascript编辑器(在Eclipse中)中运行以下代码时,它就可以工作了。换句话说,dString[2]正确地返回2012。不过,当我在SeleniumIDE中运行以下代码时,它将日期字符串拆分为9个字符,而不是所需的3个子字符串。我需要对以下代码进行哪些更改?或者这是Selenium实现中的一个错误。。。?

谢谢大家,-Sam

<tr>
    <td>store</td>
    <td>04.05.2012</td>
    <td>flight_date</td>
</tr>
<tr>
    <td>storeEval</td>
    <td>dList = '${flight_date}'.split('.'); </td>
    <td>dsplit1 </td>
</tr>
<tr>
    <td>echo</td>
    <td>${dsplit1}</td>
    <td></td>
</tr>
<tr>
    <td>storeEval</td>
    <td>day = '${dsplit1}'[9]</td>
    <td>dsplit2</td>
</tr>
<!--this returns 2-->
<tr>
    <td>echo</td>
    <td>${dsplit2}</td>
    <td></td>
</tr>

尝试

<tr>
    <td>storeEval</td>
    <td>day = storedVars.dsplit1[2]</td>
    <td>dsplit2</td>
</tr>

而不是

<tr>
    <td>storeEval</td>
    <td>day = '${dsplit1}'[9]</td>
    <td>dsplit2</td>
</tr>

它将给你一年时间(2012年)。storedVars.dsplit1[0]和storedVars.dsplit1[1]将分别为04和05。或者您可以使用简单的storeEval | dList[2] | dsplit2。在这种情况下,您可以使用getEval | dList = '${flight_date}'.split('.');而不是storeEval | dList = '${flight_date}'.split('.'); | dsplit1

它是否将.视为正则表达式中的任何字符?

尝试逃离

'${flight_date}'.split(''.');

'${flight_date}'.split(/'./g);