MATLAB

2012-09-13 14 views
7

में स्पष्ट रूप से साफ़ करने का उपयोग करना clearvars फ़ंक्शन here प्रस्तुत किया गया है।MATLAB

तो कहते हैं कि मैं चर का एक सेट है,

a, b, c, d 

और मैं को छोड़कर के लिए मैं यह करने के लिए सक्षम होना चाहिए इन चरों साफ़ करना चाहते हैं:

clearvars * -except d 

लेकिन मैं मिलता है निम्न त्रुटि:

clearvars * -except d 
       | 
Error: Unexpected MATLAB expression. 

इसका कारण क्या है?

+0

@PeterMortensen, आपका संपादन इस तरह के एक स्मार्ट गधा टिप्पणी। मुझे यह पसंद है ... –

उत्तर

7

यह काम करता है: जब यह अपने आप ही है clearvars '*' -except d

मैटलैब एक स्ट्रिंग में * परिवर्तित एक समस्या है चाहिए। यह a* और *a दोनों के साथ ठीक है, लेकिन * नहीं है।

इसके अलावा, इस काम करता है:

clearvars('*', '-except', 'd') 
5

* चरित्र की आवश्यकता नहीं है।

+0

लेकिन पृष्ठ पर उदाहरण यह कहता है: एक * -except -regexp को साफ़ करता है एक $ एक कार्य प्रणाली का एक उदाहरण है, तो स्टार क्यों काम नहीं करता है? –

+1

उस स्थिति में, '*' ''' से शुरू होने वाले किसी भी चर से मेल खाने के लिए वाइल्डकार्ड के रूप में कार्य करता है। कुछ चर बनाने की कोशिश करें जैसे 'aa = 1; ab = 2; एसी = 3', फिर यह कैसे काम करता है यह देखने के लिए 'clearvars a * -except ab' जैसे कुछ का उपयोग करें। – AGS

+1

हाँ मैं समझता हूं कि यह कैसे काम करता है, लेकिन आम तौर पर स्टार सब कुछ इंगित करता है। मुझे लगता है कि यह सिर्फ एक matlab quirk के रूप में क्यों स्टार खुद काम नहीं करता है। –