Credit


Translated From: PowerShell: Working With Regular Expressions (regex) (Initially published by Rich Prescott )

PowerShell में नियमित अभिव्यक्ति के साथ काम करने के लिए कई अलग अलग तरीके हैं, और इस विकी इन अलग अलग तरीकों में से कुछ पर जाना होगा। इस विकी नहीं होगा regex पैटर्न के लिए जाओ, वहाँ उस के लिए वेब पर कई संसाधन हैं। यदि आप पैटर्न में संसाधन अनुभाग बाहर की जाँच के साथ मदद की ज़रूरत है। 

* * इस wiki बुनियादी regex ज्ञान * * मानता है
यदि आप नियमित अभिव्यक्ति संसाधन नीचे RegEx पैटर्न देखें इमारत के साथ मदद की ज़रूरत है।


PowerShell Regex ऑपरेटरों आधारित


वहाँ कई विभिन्न ऑपरेटरों जो उन्हें में regex के उपयोग का समर्थन कर रहे हैं। अधिकांश भाग के लिए यह एक त्वरित रन वे हो सकता है और किसी भी स्वच्छ सुविधाओं का उपयोग करने के लिए कैसे पर नीचे हो जाएगा तो वे आगे काफी सीधे हैं। 


केस-संवेदी मिलान


प्रत्येक PowerShell ऑपरेटर यह केस संवेदी बनाना सी इच्छा के साथ किसी भी ऑपरेटर prefixing एक केस-संवेदी संस्करण, है। वे भी असंवेदनशील निरूपित करने के लिए मैं के साथ prefixed हो सकते हैं, लेकिन यह डिफ़ॉल्ट विकल्प है। कुछ लोग इसे के लिए क्लीनर और अधिक वर्णनात्मक कोड का उपयोग करें। इस सभी की तुलना ऑपरेटरों के साथ काम करता है, न सिर्फ regex ऑपरेटरों आधारित।
"Hello Justin" -match "justin"    #truedefault is insensitive
"Hello Justin" -cmatch "justin"  #falsecase does not match
"Hello Justin" -imatch "justin"   #trueexplicit case insensitivity


मैच (Match)

स्रोत उपलब्ध कराए गए पैटर्न से मेल खाता है, तो PowerShell मैच ऑपरेटर एक True या False मान आधार पर दिया जाएगा। जहां के साथ उपयोग के लिए महान या यदि बयान।
"The number 7 is great!" -Match "\d"

वहाँ एक स्वचालित चर $Matches नामक एक मैच पर बनाई गई है

"Hello Justin, Welcome" -match "hello\s(\w+), welcome"
"My name is $($matches[1])"

$Matches चर पैटर्न से मैच के परिणाम का एक संग्रह है। अनुक्रमणिका 0 है स्ट्रिंग मेल खा रहा था और उसके बाद यह मैच समूह है जो किसी भी चीज़ के साथ () में है है|

बदलें (Replace)


विस्तार के प्रयोग के  -replace 
String -Replace <regex pattern>[, <replacement string>]

सरल बदलें - यह नहीं कोई केस-संवेदी मेल है।
"hello world" -replace "world""World"

सरल निकालें
"hello world" -replace "world"

Regex बदलें
"today is 04/13/1999" -replace "\d{2}/\d{2}/\d{4}", (get-date -f "MM/dd/yyyy")

Regex पाया का उपयोग कर प्रतिस्थापित करें से मेल खाता

"justin.rich@technet.com" -replace "^(\w+)\.(\w+)@"'$1-$2@'

Regex बदलें का उपयोग संख्याओं के आगे मेल नहीं मिले

"jrich532" -replace "(\d)\d{2}""`${1}23"


भाजित/सम्मिलित हों (Split/Join)


विस्तार और का उपयोग करें - विभाजन - सम्मिलित हों और कैसे वे तार .split और .join से अलग 


स्विच कथन

विस्तार regex साथ स्विच कथन का उपयोग 


.NET regex नामस्थान का उपयोग


वहाँ एक प्रकार त्वरक [regex] .net नियमित व्यंजक नाम स्थान के लिए है 


प्रदर्शन विचार

पर निर्भर करता है क्या की तरह मेल खाने वाला आप करने की ज़रूरत, regex के प्रदर्श�� मे���� एक बहुत महत्वपूर्ण अंतर हो सकता है। पैटर्न खुद को रूप में अच्छी तरह से गति पर एक प्रभाव हो सकता है।


संसाधन


PowerShell और अभ्यास के लिए Regex के बारे में जानने क��� लिए संसाधन की सूची। 


PowerShell संसाधन

नोट: निम्न संसाधन केवल अंग्रेजी में उपलब्ध हैं.

 

Regular Expression संसाधन

नोट: निम्न संसाधन केवल अंग्रेजी में उपलब्ध हैं.

यह भी देखें

नोट: निम्न संसाधन केवल अंग्रेजी में उपलब्ध हैं.

अन्य भाषाएँ
नोट: निम्न संसाधन केवल अंग्रेजी में उपलब्ध हैं.