2012-07-29 18 views
6

मैं पुष्टि करने के लिए एक विशिष्ट शब्दकोश कुंजी एक मूल्यदेखने के लिए कैसे/कुंजी

उदा शामिल है कि क्या कोशिश कर रहा हूँ द्वारा एक मूल्य के शब्दकोश की जाँच

dict01 वाक्यांश "परीक्षण" "परीक्षक" में महत्वपूर्ण

पल मैं शब्दकोश keypair, का उपयोग कर के माध्यम से पुनरावृति करने के लिए हो रहा है पर जो मैं इसे प्रदर्शन बर्बाद कर के रूप में क्या करना है नहीं करना चाहती शामिल करता है

+0

आप dict01 के माध्यम से मूल्य प्राप्त कर सकते हैं चाहता हूँ [ "परीक्षक"] और उसके बाद एक करें। मूल्य भाग पर निर्भर करता है। क्या मुझे कुछ याद आ रही है? यदि आप विशिष्ट कुंजी जानते हैं, तो इसका मान प्राप्त करें और फिर बस उस स्ट्रिंग को खोजें। – Joe

उत्तर

10

आप उपयोग कर सकते हैं ContainsKey और string.Contains:

var key = "tester"; 
var val = "testing"; 
if(myDictionary.ContainsKey(key) && myDictionary[key].Contains(val)) 
{ 
    // "tester" key exists and contains "testing" value 
} 

तुम भी उपयोग कर सकते हैं TryGetValue:

var key = "tester"; 
var val = "testing"; 
var dicVal = string.Empty; 
if(myDictionary.TryGetValue(key, out dicVal) && dicVal.contains(val)) 
{ 
    // "tester" key exists and contains "testing" value 
} 
+0

यह इसके बारे में जाने का एक अच्छा तरीका प्रतीत नहीं होता है, क्योंकि आप दो (कुंजी और मूल्य) को एक साथ जोड़ नहीं रहे हैं, अगर मैं एक महत्वपूर्ण मूल्य में एक विशिष्ट पैटर्न की खोज करना चाहता हूं - लेकिन केवल एक कुंजी में – user1559618

+0

' TryGetValue' अधिक कुशल होगा। –

+0

@des हाँ धन्यवाद, यही वह था जो मैं बाद में था! :) – user1559618

2

आप निम्न विधि का उपयोग कर सकते हैं यदि आप नहीं है शब्दकोश के माध्यम से पुनरावृति करने के लिए दो बार

string value; 
var result = dict01.TryGetValue("tester", out value) && value.Contains("testing"); 
संबंधित मुद्दे