मानक पुस्तकालय नहीं करता है इस कार्यक्षमता प्रदान नहीं करते हैं। आप एक मैक्रो के साथ अपना खुद का लिख सकते हैं।
macro_rules! scan {
($string:expr, $sep:expr, $($x:ty),+) => {{
let mut iter = $string.split($sep);
($(iter.next().and_then(|word| word.parse::<$x>().ok()),)*)
}}
}
fn main() {
let output = scan!("2 false fox", char::is_whitespace, u8, bool, String);
println!("{:?}", output); // (Some(2), Some(false), Some("fox"))
}
मैक्रो से पीछे नहीं इनपुट तर्क एक & str, चार, या उचित बंद/समारोह हो सकता है। निर्दिष्ट प्रकारों को FromStr विशेषता लागू करना आवश्यक है।
ध्यान दें कि मैंने इसे एक साथ जल्दी रखा है ताकि इसे पूरी तरह से परीक्षण नहीं किया गया हो।
स्रोत
2015-06-25 10:43:34
ऐसा प्रतीत होता है कि आपको अब 'सुविधा (प्लगइन)' की आवश्यकता नहीं है? – Shepmaster
मैंने वर्तमान संस्करण में उदाहरण अपडेट किए हैं –