0

私は正規表現で問題を解決しようとしています。先読みアサーションが最善の答えかもしれないと思います(またはそう思います)が、それらの使用方法がわかりません。

入力例int a = 5;では、正規表現を使用してint識別子の値を取得します5。具体的には、識別子と等号の後、セミコロンの前の値と一致する正規表現を探しています。

誰かが私に詳細な例を提供して、先読みアサーションの使用方法を学ぶことができますか(それがこのようなことを行うための最良の方法である場合)?

ありがとうございました!

4

2 に答える 2

2

正規表現/=\s*(\d+)\s*;/は、要素間に任意の数のスペースを許可し、数字をキャプチャするため、最適です。返される配列で[1]は、が数値になります。

于 2013-02-11T02:30:23.953 に答える
0

次のスニペットで先読みを使用できます。

var input = "a = 12345;"
var inputValue = input.replace(/\w+\s*=\s*(\d+)\s*(?=;).*/, "$1");

例では、結果は12345で、gives5を使用してい"a = 5;"ます。

于 2013-02-11T02:39:46.150 に答える