मैं पर्ल का उपयोग करके एक स्ट्रिंग में सभी सकारात्मक और नकारात्मक पूर्णांक निकालना चाहता हूं। स्ट्रिंग में निम्न वर्ण और स्थान हैं - {}
उदाहरण:
$a = "{ { 0,256,0,0 },{ -2,256,2,0 },{ -4,256,4,0 },{ -6,255,7,0 }
,{ -7,254,10,-1 },{ -8,252,13,-1 },{ -10,251,16,-1 }
,{ -10,249,19,-2 },{ -12,247,23,-2 },{ -14,245,27,-2 }
,{ -14,242,31,-3 },{ -15,239,35,-3 },{ -15,236,39,-4 }
,{ -16,233,44,-5 },{ -17,230,48,-5 },{ -17,226,53,-6 }
,{ -18,222,58,-6 },{ -18,218,63,-7 }";
मेरा ओ / पी सरणी होना चाहिए @b
इसके तत्वों के रूप में 0, 256,0,0, -2,256,2,0 ... आदि
मैंने निम्न कमांड की कोशिश की है, लेकिन रिक्त स्थान / अशक्त तत्व भी मेरे ओ / पी सरणी में जोड़े जाते हैं।
my @b = split (/[,{}s]/,$a);
उत्तर:
उत्तर № 1 के लिए 6निकालते समय, आप अक्सर यह देखना चाहते हैं कि आप क्या चाहते हैं कर आप जो चाहते हैं उस पर विभाजित होने के बजाय, इस मामले के लिए वैश्विक रेगेक्स मैच का प्रयास करें:
# Match each integer-like value, including sign:
my @b = $a =~ /-?d+/g;
चालबाजी करने लगता है।