तो मैं ऐसा दिखता है स्ट्रिंग की एक सूची है:Linq: कैसे दूसरे को पाने के लिए पिछले
var ls=new List<string>()
{
"100",
"101-102-1002",
"105-153-1532-1532",
"105-1854-45-198",
"180-95-45-200"
};
मैं विभाजन स्ट्रिंग के दूसरे पिछले प्राप्त करना चाहते हैं। तो मेरी उत्पादन इस तरह दिखता है:
ls.Select (l =>l.Split('-').Select ((s,i) =>new {s,i})
.OrderByDescending (x=>x.i).Skip(1).Take(1))
मुझे लगता है कि इस समाधान इस सरल कार्य के लिए जटिल हो सकता है:
null,
102,
1532,
45,
45
मैं इसके लिए एक समाधान है कि इस तरह दिखता है। तो मेरा सवाल है: क्या आप में से किसी को भी इस समस्या का आसान समाधान है?
पावेल Gatilov के उत्तर के आधार पर परिणाम गलत है या मैं सवाल नहीं मिलता बना लिया है: ऐसा नहीं होना चाहिए हो: शून्य, 102,153,1235? –
आपका समाधान मुझे ठीक लग रहा है! – ColinE
हां यह स्प्लिट स्ट्रिंग का दूसरा अंतिम होना चाहिए। यदि कोई दूसरा अंतिम नहीं है तो इसे शून्य वापस करना चाहिए। – Arion