2009-10-06 16 views
5

उदाहरण:गणित में, मैं पैटर्न कैसे ढूंढ सकता हूं जिसमें नियम और सूचियां शामिल हैं?

test = {"a" -> {{1}, 12}, "b" -> {13}} 

मैं इस पैटर्न के साथ सूची में सभी भाव को खोजने के लिए करना चाहते हैं:

_ -> {_,_} 

पहला तत्व है, "एक" -> {{1}, 12}, इस पैटर्न द्वारा प्रतिनिधित्व किया जाता है।

हालांकि, इन भाव से कोई भी काम:

Cases[test,_->{_,_}], Cases[test,_->_], Cases[test,Rule[_,_]], etc. 

किसी भी सलाह की सराहना की जाएगी।

उत्तर

9

क्या आप देख रहे हैं HoldPattern है:

In[1]:= test = {"a" -> {{1}, 12}, "b" -> {13}}; 

In[2]:= Cases[test, HoldPattern[_ -> {_, _}]] // InputForm 
Out[2]= {"a" -> {{1}, 12}} 

संपादित करें: यह भी नामित पैटर्न चर के साथ काम करता है।

In[3]:= Cases[test, HoldPattern[_ -> {x_, _}] :> x] 
Out[3]= {{1}} 
+0

उत्कृष्ट। ऐसा लगता है कि मैं क्या देख रहा हूं। क्या पैटर्न वैरिएबल नाम देना संभव है, उदा। _-> {_, _ x} /; होल्डपटरर्न का उपयोग करते समय x <10 ? – Tony

+0

बढ़िया! शीर्ष दाग – Tony

संबंधित मुद्दे

 संबंधित मुद्दे