2009-10-21 11 views
20

निम्नलिखित रेगेक्स में अंडरस्कोर का क्या अर्थ है?_ [a-zA-Z0 -9_] में _ का क्या अर्थ है?

[a-zA-Z0-9_]

_ कोई फर्क तो मैं यह करने के उद्देश्य समझ में नहीं आता है।

+10

बीटीडब्ल्यू, '[ए-जेए-जेड 0-9_]' == '\ w' – Tordek

+7

कृपया देखें [perlre] (http://perldoc.perl.org/perlre.html) और [perlref] (http: //perldoc.perl.org/perlreref.html)। हाँ, मैंने बस "आरटीएफएम" से कहा। –

+4

टॉर्डक: नहीं [ए-जेए-जेड -9_]! = \ डब्ल्यू, पर्ल में नहीं। –

उत्तर

44

यह छोटे अक्षरों, बड़े अक्षरों और संख्याओं के अलावा अंडरस्कोर वर्ण से मेल करने का मतलब है।

15

इसका मतलब है कि अंडरस्कोर भी मेल खाता है।

65

अंडरस्कोर का मतलब अंडरस्कोर है।

+3

एक ताकत के रूप में की कोशिश करो कुछ बात हुई है, मैं आपके कथन के साथ एक भी समस्या नहीं मिल सका; यह बोलना सादगी और तर्क :-) +1 – paxdiablo

+12

तिरस्कार से परे है और पहले कभी नहीं प्रतिनिधि टोपी था इतनी आसानी से मारा ... – Ether

9
चरित्र दृश्यों के अपवाद के साथ

([., [:, और [=), सीमा भाव (जैसे, [a-z]), और शुरुआत ([^) में स्वरित, एक ब्रैकेट अभिव्यक्ति के अंदर हर चरित्र चरित्र ही मतलब है, बस अंडरस्कोर की तरह।

एक साइड नोट के रूप में, यह अभिव्यक्ति आमतौर पर \w (शब्द चरित्र, यूनिकोड और लोकेल को अनदेखा करके) द्वारा दर्शाया जाता है, और आमतौर पर वर्णों के सेट को परिभाषित करने के लिए उपयोग किया जाता है जिन्हें परिवर्तनीय नामों में उपयोग करने की अनुमति है।

+3

\ w स्थान पर निर्भर करता है और यह भी सबसे अधिक भाषाओं के लिए यूनिकोड वर्ण –

+0

से मेल खाएगी, '[एक-zA- है Z _] [a-zA-Z0-9 _] * 'संभवतः परिवर्तनीय नामों के लिए अधिक सटीक है क्योंकि वे अंकों से शुरू करने पर रोक लगाते हैं। –

+0

और आजकल कई भाषाएं परिवर्तनीय नामों के लिए अन्य स्क्रिप्ट को भी अनुमति देती हैं। तो यूनिकोड कक्षाओं के साथ भी मज़े करें :-) – Joey

11

रेगुलर एक्सप्रेशन perlre में दर्ज कर रहे हैं। जब भी नियमित अभिव्यक्तियों के बारे में कोई सवाल है, तो यह जांचने का स्थान है। Regular-Expressions.info साइट भी बहुत उपयोगी है।

आरंभ करने के लिए, बात आप देख रहे हैं एक "चरित्र वर्ग" कहा जाता है।

+1

+1 तत्काल प्रश्न से अधिक * उत्तर देने के लिए +1। – paxdiablo

+0

धन्यवाद। केवल अगर हम सभी नए लोगों के इतने सहिष्णु थे। – unj2

+0

पर्ल में नियमित अभिव्यक्तियों के लिए नए व्यक्ति के लिए, मैं हमेशा पहले 'perldoc perlrequick' की सलाह देता हूं। यह 'perldoc perlre' से बहुत अधिक अनुकूल है - अधिकतर क्योंकि यह इतना विस्तृत रूप से विस्तृत नहीं है। – Telemachus

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