Regular Expressions
शब्द सीमा
खोज…
वाक्य - विन्यास
- POSIX शैली, शब्द का अंत:
[[:>:]]
- POSIX शैली, शब्द की शुरुआत:
[[:<:]]
- POSIX शैली, शब्द सीमा:
[[:<:][:>:]]
- SVR4 / GNU, शब्द का अंत:
\>
- SVR4 / GNU, शब्द की शुरुआत:
\<
- पर्ल / जीएनयू, शब्द सीमा:
\b
- Tcl, शब्द का अंत:
\M
- Tcl, शब्द का प्रारंभ:
\m
- Tcl, शब्द सीमा:
\y
- पोर्टेबल ईआरई, शब्द की शुरुआत:
(^|[^[:alnum:]_])
- पोर्टेबल ERE, शब्द का अंत:
([^[:alnum:]_]|$)
टिप्पणियों
मैच पूरा शब्द
\bfoo\b
किसी अल्फ़ान्यूमेरिक और _
पूर्ववर्ती या इसके बाद के साथ पूर्ण शब्द का मिलान करेगा।
Regularexpression.info से लेना
शब्द सीमा के रूप में योग्य तीन अलग-अलग पद हैं:
- स्ट्रिंग में पहले चरित्र से पहले, यदि पहला वर्ण एक शब्द चरित्र है।
- स्ट्रिंग में अंतिम वर्ण के बाद, यदि अंतिम वर्ण एक शब्द वर्ण है।
- तार में दो वर्णों के बीच, जहाँ एक शब्द वर्ण है और दूसरा शब्द वर्ण नहीं है।
यहाँ वर्ण शब्द का अर्थ निम्न में से किसी से है
- वर्णमाला (
[a-zA-Z]
) - संख्या (
[0-9]
) - अंडरस्कोर
_
संक्षेप में, शब्द वर्ण = \w
= [a-zA-Z0-9_]
किसी शब्द की शुरुआत या अंत में पैटर्न का पता लगाएं
निम्नलिखित तारों की जांच करें:
foobarfoo
bar
foobar
barfoo
- नियमित अभिव्यक्ति
bar
सभी चार तारों से मेल खाएगा, -
\bbar\b
केवल 2 से मेल खाएगा, -
bar\b
दूसरा और तीसरा तार मिलान करने में सक्षम होगा, और -
\bbar
2nd और 4th स्ट्रिंग्स से मेल खाएगा।
शब्द सीमा
\b
मेटाचैकर
पूरे शब्दों को खोजना आसान बनाने के लिए, हम मेटाचैकर \b
उपयोग कर सकते हैं। यह एक अल्फ़ान्यूमेरिक अनुक्रम की शुरुआत और अंत को चिह्नित करता है *। इसके अलावा, चूंकि यह केवल इस स्थानों को चिह्नित करने का कार्य करता है, यह वास्तव में अपने दम पर किसी भी चरित्र से मेल नहीं खाता है।
*: यह, अल्फानुमेरिक अनुक्रम में एक शब्द भी कॉल करने के लिए के बाद से हम एक साथ यह के पात्रों पकड़ कर सकते हैं आम है \w
(शब्द वर्ण वर्ग)। यह भ्रामक हो सकता है, हालाँकि, क्योंकि \w
में संख्याएँ भी शामिल हैं और, अधिकांश स्वादों में, अंडरस्कोर।
उदाहरण:
regex | इनपुट | मेल खाता है? |
---|---|---|
\bstack\b | stackoverflow | नहीं , चूँकि पूरे शब्द stack का कोई ऑक्सरेन्स नहीं है |
\bstack\b | foo stack bar | हां , चूंकि stack से पहले और बाद में कुछ भी नहीं है |
\bstack\b | stack!overflow | हाँ : stack से पहले कुछ भी नहीं है और ! एक शब्द चरित्र नहीं है |
\bstack | stackoverflow | हाँ , चूंकि stack से पहले कुछ भी नहीं है |
overflow\b | stackoverflow | हाँ , क्योंकि overflow बाद कुछ भी नहीं है |
\B
मेटाचैकर
यह प्रत्येक गैर-सीमा वाले वर्ण के स्थान के विरुद्ध मिलान, \b
के विपरीत है। \b
तरह, चूंकि यह स्थानों से मेल खाता है, इसलिए यह अपने आप किसी वर्ण से मेल नहीं खाता है। यह गैर पूरे शब्दों को खोजने के लिए उपयोगी है।
उदाहरण:
regex | इनपुट | मेल खाता है? |
---|---|---|
\Bb\B | abc | हां , चूंकि b शब्द सीमाओं से घिरा नहीं है। |
\Ba\B | abc | नहीं, a एक शब्द अपने बाईं ओर सीमा है। |
a\B | abc | हाँ, a अपने सही पक्ष पर एक शब्द सीमा नहीं है। |
\B,\B | a,,,b | हां , यह दूसरे अल्पविराम से मेल खाता है क्योंकि \B दो गैर-शब्द वर्णों के बीच के स्थान से भी मेल खाएगा (यह ध्यान दिया जाना चाहिए कि पहले अल्पविराम के बाएं और दूसरे के दाईं ओर एक शब्द सीमा है)। |
पाठ को छोटा करें लेकिन अंतिम शब्द को न तोड़े
अधिकांश N वर्णों पर लंबे पाठ बनाने के लिए, लेकिन अंतिम शब्द को बरकरार रखें, का उपयोग करें .{0,N}\b
पैटर्न:
^(.{0,N})\b.*