使用Selenium IDE从字符串中提取数字

Extracting Number from a string using Selenium IDE

本文关键字:提取 数字 字符串 Selenium IDE 使用      更新时间:2023-09-26

我已经看了几十个这个问题的答案,并尝试了所有答案,但无法让任何一个工作。 我确定这是非常简单的事情,但这就是我要做的;

我需要从字符串中提取一个数值,然后比较它以查看它是否大于或等于数字。 我正在使用硒 IDE。

字符串很简单XXX Total matches其中XXX是数字。 我使用 storeText 存储了这个字符串,将其存储在一个足够恰当地命名为 String 的变量中。

然后,我运行一个echo命令来显示"字符串"以确保我得到的那部分是正确的,它按预期显示"XXX 总匹配"字符串。

我已经尝试了几种提取字符串数字部分的方法,包括正则表达式、javascript 等。

"似乎"起作用的是 storeeval | String=String.slice(0, 2); | Number ,但是当我尝试回显数字时,它什么也没显示。

我试过了

javascript{(${String}.match(/''d+/))}
javascript{parseInt(${String}, 10);}
javascript{parseInt(${String})}

但是当我尝试这些时,我在硒 IDE 中出现错误

[error] Unexpected Exception: fileName -> chrome://selenium-ide/content/selenium-core/scripts/selenium-api.js, lineNumber -> 2531

敢肯定这可能是一个基本的新手错误,但我无法弄清楚我做错了什么。

storeXXX 结果的变量设置为 storageVars。
尝试跟随。

storeText id=numAndString text 
storeEval storedVars['text'].match(/^'d+/); num 
echo ${num}

您可以通过以下代码拆分该数字字符串 -

store | XXX Total matches  | string
store | 0 | delimiter
store | javascript{storedVars['string'].split('Total')[storedVars['delimiter']]} | number
echo  | ${number}
Result - XXX