LINQを使用して文字列を評価し、Regexライブラリを使用して数字またはその他の文字が0の文字列を解析します。ロジック、それはまだどちらかの方法で動作するはずですが、以下は2つのシナリオの例です。ロジックがスワップされた場合にテストが失敗する3進演算でのLINQ演算
この例は、私のテストに合格するものです。ロジックは、それはまだ渡す必要が入れ替わったが、私のテストのカップルが失敗し
return Regex.Split(number, @"[^\d-]")
.Select(d => Regex.IsMatch(d, @"[\d-]") ? int.Parse(d.TrimEnd('-')) : 0)
.Where(d => d <= 1000).ToList();
は...
return Regex.Split(number, @"[^\d-]")
.Select(d => Regex.IsMatch(d, @"[^\d-]") ? 0 : int.Parse(d.TrimEnd('-')))
.Where(d => d <= 1000).ToList();
でしたの値を返します追加あなたは例外を提供していますか? –
'IsMatch'はあなたの式がどこかに存在することを確認します。だから、 "A1"のような値は、数字があり、数字かダッシュではない値を持っているので、[\ d-]と[[d-]]の両方にマッチします。 – juharr
スローされる例外は解析例外です.dは正しい形式ではありません。 –