this SO question में के लिए सभी लाइनों करता है। क्या \'
grep के लिए एक विशेष अर्थ है?क्यों वहाँ कुछ है कि मैं व्याख्या नहीं कर सकते है ग्रेप का प्रतिमान है " '"
उत्तर
grep regex GNU extension: '\' 'पूरे इनपुट के अंत से मेल खाता है
\ एक बच निकलने वाला चरित्र है। इसका मतलब यह है कि 'को पाठ के रूप में माना जाना चाहिए, न कि नियंत्रण चरित्र के रूप में।
यह grep
का वास्तव में अजीब बीवियर है, मुझे नहीं पता कि इसे कैसे समझाया जाए, लेकिन मुझे ध्यान रखना चाहिए कि \'
किसी भी चरित्र से मेल नहीं खाता है। ऐसा लगता है कि यह $
रूप में एक ही अर्थ है:
$ echo x | grep "x\'"
x
$ echo xy | grep "x\'"
$ echo x | grep "\'x"
अद्यतन 1
के रूप में यह (लिंक के लिए रिचर्ड Sitze करने के लिए धन्यवाद) में http://www.gnu.org/software/findutils/manual/html_node/find_html/grep-regular-expression-syntax.html कहा गया है यह वास्तव में $
रूप में एक ही अर्थ है।
$ echo x | grep 'x$'
x
$ echo x | grep 'x$$'
$ echo x | grep "x\'"
x
$ echo x | grep "x\'\'"
x
$ echo x | grep "x\'\'\'"
x
आप \'
रूप में कई बार के रूप में आप चाहते हैं लेकिन ऐसा $
के लिए नहीं है निर्दिष्ट कर सकते हैं: लेकिन इस बीच मैं \'
और $
के बीच एक अंतर का उल्लेख किया गया है। केवल एक $
होना चाहिए।
एक और महत्वपूर्ण टिप्पणी। मैनुअल का कहना है:
‘\'’ matches the end of the whole input
लेकिन सख्ती से बोला कि सच नहीं है क्योंकि \'
मैचों न केवल पूरे इनपुट के अंत लेकिन हर एक लाइन भी के अंत:
$ (echo x; echo y) | grep "\'"
x
y
$
वास्तव में कैसे करता है।
के लिए सभी इनपुट से मेल खाता है मेरे लिए '$' और '\ 'थोड़ा अलग व्यवहार करता है। 'echo x | grep "$ x" 'मैचों, लेकिन 'echo x | grep "\ 'x" 'मेल नहीं खाता है। – theon
आपको 'grep' $ x'' नहीं 'grep "$ x" 'लिखना होगा; क्योंकि '" $ x "' शैल द्वारा विस्तारित किया जाएगा और '" $ x "' ''' (कुछ भी नहीं) जैसा ही होगा। बस 'echo "$ x" 'और' echo '$ x'' –
आज़माएं। अच्छी बात। – theon
मैं नियमित अभिव्यक्ति की इस सुविधा में पता नहीं था। लेकिन यह नियमित-expressions.info पर end of the string एंकर के रूप में सूचीबद्ध है।
यह केवल जीएनयू बेसिक और विस्तारित नियमित अभिव्यक्तियों में सभी रेगेक्स कार्यान्वयन में मौजूद नहीं है, अधिक जानकारी के लिए यह compatibility chart देखें।
- 1. मॉड्यूल है कि वहाँ
- 2. Hadoop स्ट्रीमिंग ग्रेप काम नहीं करता है
- 3. ** ** ** कुछ भी क्यों नहीं ढूंढता है?
- 4. प्रोग्रामिंग प्रतिमान; यह सोचकर कि पुनः लिखना/रीफैक्टरिंग आवश्यक है
- 5. GetFields() कुछ भी क्यों नहीं लौटाता है?
- 6. क्यों (पायथन | रूबी) व्याख्या की गई है?
- 7. है वहाँ किसी भी तरह से है कि हम iphone
- 8. क्यों sprintf() आउटपुट कुछ भी नहीं है?
- 9. कुछ भी है कि खाली
- 10. जावा का यूआरएल क्लास कुछ प्रोटोकॉल क्यों नहीं पहचानता है?
- 11. लाइनों है कि कुछ स्ट्रिंग
- 12. क्यों() काम नहीं कर रहा है?
- 13. वहाँ अजगर में किसी भी अभिव्यक्ति है कि रूबी की || =
- 14. ग्रेप
- 15. सत्यापन क्यों है() काम नहीं कर रहा है?
- 16. क्यों मार्जिनबॉटम काम नहीं कर रहा है?
- 17. LINQ - कुछ फ़ील्ड का चयन नहीं कर रहा है?
- 18. NodeJS - MongooseJS स्कीमा त्रुटि नहीं कर सकते कि मैं बाहर
- 19. वहाँ = (बिना है)
- 20. पाइथन में "अगर कुछ नहीं है": "अगर कुछब == कोई नहीं:" से बेहतर क्यों है?
- 21. जांच कर रहा है कि mysql_query ने कुछ भी लौटाया है या नहीं
- 22. ग्रेप
- 23. रेल रिपोर्ट एक स्तंभ है कि नहीं मिल रहा है वहाँ
- 24. सिम आवेदन टूलकिट - नहीं कर सकते प्रदर्शन पाठ (वास्तव में कुछ भी नहीं है) चयन
- 25. प्रतिमान मिलान
- 26. आप UnRegisterStartupScript क्यों नहीं कर सकते?
- 27. self.navigationItem.hidesBackButton क्यों काम नहीं कर रहा है?
- 28. क्यों __str__ कर सकते हैं, str क्यों दूसरे पैरामीटर नहीं मिल सकता है?
- 29. कैसे मैं कहना नहीं है, नहीं है
- 30. क्या कोई मुझे बेनामी तरीकों की व्याख्या कर सकता है?
लेकिन यहां तक कि यदि टेक्स्ट फ़ाइल में एक एकल कोट नहीं है, तो grep अभी भी फ़ाइल में सभी पंक्तियों से मेल खाता है। मुझे लगता है कि ओपी क्या पूछ रहा है। – theon
हां, यह अजीब बात है कि grep शब्दशः एकल उद्धरण – perreal