2017-11-20 9 views
0

.Net Regexが期待どおりに動作しません。以下は成功$ trueを生成するはずです。何か案は?。Powershellからのネット正規表現が期待どおりに動作しない

PS C:\Users\john\Desktop\ser> $s = "N:3" 

PS C:\Users\john\Desktop\ser> using namespace System.Text.RegularExpressions 

PS C:\Users\john\Desktop\ser> $s 
N:3 
PS C:\Users\john\Desktop\ser> $m = [Regex]::Match("N:", $s) 

PS C:\Users\john\Desktop\ser> $m 

Groups : {0} 
Success : False 
Name  : 0 
Captures : {} 
Index : 0 
Length : 0 
Value : 

成功= $ false?何が起きてる?以下のC#コードはSucesssを報告しかし

:私はこのC#コードsnippletを実行すると

string s = "N:"; 
var m = Regex.Match("N:", s); 
if (m.Success) { 
    MessageBox.Show("Success!"); 
} 
else { 
    MessageBox.Show("No Match"); 
} 

、それが成功を報告します。

答えて

0

誤警報。私は、議論が切り替えられたことに気付いた。

PS C:\Users\john\Desktop\ser> $s = "N:3" 

PS C:\Users\john\Desktop\ser> using namespace System.Text.RegularExpressions 

PS C:\Users\john\Desktop\ser> $s 
N:3 

# Switch Arguments around 
PS C:\Users\john\Desktop\ser> $m = [Regex]::Match($s, "N:") 

PS C:\Users\john\Desktop\ser> $m 

Groups : {0} 
Success : True 
Name  : 0 
Captures : {0} 
Index : 0 
Length : 2 
Value : N: 
関連する問題