1

私はこの質問に対する何十もの答えを見て、それらすべてを試しましたが、どれも機能させることができません。とてもシンプルなことだと思いますが、これが私がやろうとしていることです。

文字列から数値を抽出し、それを比較して、数値以上かどうかを確認する必要があります。SeleniumIDEを使用しています。

文字列は単純です。XXX Total matchesここXXXで、は数字です。この文字列は、Stringを使用してstoreText保存し、適切な名前の変数Stringに保存しました。

次に、echoコマンドを実行して「文字列」を表示し、その部分が正しいことを確認します。期待どおりに「XXX合計一致」文字列が表示されます。

正規表現、JavaScriptなど、文字列の数値部分の抽出について説明したいくつかの方法を試しました。

「動作しているように見える」ものはですがstoreeval | String=String.slice(0, 2); | Number、Numberをエコーし​​ようとすると、何も表示されません。

私はもう試した

javascript{(${String}.match(/\\d+/))}

javascript{parseInt(${String}, 10);}

javascript{parseInt(${String})}

しかし、それらを試してみると、SeleniumIDEでエラーが発生します

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

おそらく基本的な初心者の間違いだと思いますが、何が間違っているのか理解できません。

4

2 に答える 2

2

storeXXX結果の変数はstoredVarsに設定されます。
フォローしてみてください。

storeText id=numAndString text 
storeEval storedVars['text'].match(/^\d+/); num 
echo ${num}
于 2012-08-07T03:51:32.957 に答える
0

以下のコードでその数値文字列を分割できます-

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

Result - XXX
于 2012-08-07T06:55:33.310 に答える