जहाँ तक मुझे पता है, रूबी यूनिकोड गुणों का समर्थन नहीं करता (कम से कम संस्करण 1.8 तक) है, तो आप
^(?:[^\W\d_]|-)+$
स्पष्टीकरण उपयोग करने की आवश्यकता हो सकती है: [^\W\d_]
मैचों कोई पत्र (शाब्दिक अर्थ है "मैच एक चरित्र जो न तो एक गैर-अल्फान्यूमेरिक वर्ण, एक अंक, या अंडरस्कोर ") है। इस मामले में, उपयोग करने के लिए सही नकारात्मक एक डबल नकारात्मक है। चूंकि हम एक नकारात्मक चरित्र वर्ग का उपयोग कर रहे हैं, इसलिए हमें -
को वैकल्पिक रूप से अनुमति देने की आवश्यकता है।
चेतावनी:regular-expressions.info से यह रूबी की तरह दिखता है केवल \w
आशुलिपि के साथ ASCII वर्ण से मेल खाता है, तो के रूप में इरादा इस regex काम न करे। मेरे पास रूबी स्थापित नहीं है, लेकिन rubular.com पर यह regex सही ढंग से काम कर रहा है।
वैकल्पिक समाधान
^[[:alpha:]-]+$
regular-expressions.info करने और RegexBuddy, लेकिन rubular.com पर यह काम नहीं कर रहा अनुसार गैर- ASCII वर्ण से मेल खाना चाहिए।
स्रोत
2010-07-02 07:26:47
अपने रूबी रेगेक्स का परीक्षण करने के लिए http://rubular.com सर्वोत्तम संसाधन भी आज़माएं। –