1

引用符間の var 値を一致させたい。入力は次のとおりです。

bunch of other text, html tags, css 
var SECURITYTOKEN = "1354010802-f407561a1503fa33e8e316f058c0f0598ce5adad";
bunch of other text, html tags, css 

結果は 1354010802-f407561a1503fa33e8e316f058c0f0598ce5adad になるはずです

私はこのようなことを試みていました:Match m = Regex.Match(input, @"var\sSECURITYTOKEN\s="); しかし、私は完全に混乱しています。

4

3 に答える 3

3

あなたのバリアントはその部分だけを見つけますvar SECURITYTOKEN =

肯定的な先読み(?=...)と肯定的な後読みを使用する(?<=...)

String regexPattern = "(?<=var SECURITYTOKEN = \")(.*?)(?=\")";
Match m = Regex.Match(input, regexPattern);
于 2012-11-27T11:30:14.703 に答える
0

これは og Grand answer とほとんど同じですが、入力が次のようになっている場合

var foo = "bar";
var SECURITYTOKEN = "1354010802-f407561a1503fa33e8e316f058c0f0598ce5adad";
var tata = "titi";

以下はより良いでしょう:

var regexPattern = "(?<=var SECURITYTOKEN\s*=\s*\")(.*?)(?=\";)";
Match m = Regex.Match(input, regexPattern);
于 2012-11-27T12:35:21.770 に答える
0

この正規表現を試してください (?<=")(.*?)(?=")

だから、それはこのようなものになります

var regexPattern = "(?<=\")(.*?)(?=\")";
Match m = Regex.Match(input, regexPattern);
于 2012-11-27T11:17:33.717 に答える