0

私はこれをしばらくいじっていましたが、誰かが助けてくれるかどうかを確認するためにここに投稿することにしました. 私はRegExrツールをいじりました(運がありませんでした): http://gskinner.com/RegExr

とにかく、私は(引用符なしで)言い回しを含む文字列を持っています:「13.5から14.1」

最初の番号: 13.5 の var と 2 番目の番号: 14.1 の var を作成する必要があります。

だから私は次の結果が欲しい:

var firstVal:String = 13.5; var secondVal:String = 14.1;

最初の数値に対して次のようにして動作させました: var lowRegExp:RegExp=/\d[0-9].\d[0-9]/;

2 番目の数値については、次のようにしました。 var highRegExp:RegExp=/\d[0-9].\d[0-9]$/;

ここでの問題は、文字列の形式がわからないことです。次のようになる場合もあります (小数点以下 2 桁): 13.57 から 14.10

したがって、次の組み合わせを使用して動作することを確認する必要があります: 13.50 から 14.1、13.5 から 14.10、3.50 から 4.10、3.5 から 4.1 (すべての組み合わせが機能する必要があります)

どんな助けでも大歓迎です!

4

2 に答える 2

0

次のようにする必要があります: - 任意の桁数、その後にピリオド リテラル、その後に任意の桁数。

Pattern: \d+\.\d+
So use something similar:
var mystr:String = "15.4 to 153.93";
var tokens:Array = mystr.match(/\d+\.\d+/g);

また、regexpal.comを使用する習慣を身につけました。これは、アプリケーションで反復テストを行うよりもはるかに高速です。;)

于 2012-11-14T21:46:25.970 に答える
0

これが私が仕事を得たものです。これがどれほどきれいかはわかりませんし、ハードコーディングのファンではありませんが、すべてのシナリオで機能します. 誰かがこれを行うきれいな方法を知っているなら、私に知らせてください。

var myString:String="13.5 to 14.1";
var firstVal:String=myString.substring(0, myString.search(" to "));
var secondVal:String=myString.substring((myString.search(" to ") + 4));
于 2012-11-14T21:33:00.757 に答える