कृपया उचित RegEx मिलान में सहायता करें। 6 पूर्ण संख्याओं के किसी भी संयोजन के बाद कोई भी 2 अक्षर।RegEx पैटर्न किसी भी दो अक्षरों के बाद छह संख्या
These would be valid:
RJ123456
PY654321
DD321234
These would not
DDD12345
12DDD123
कृपया उचित RegEx मिलान में सहायता करें। 6 पूर्ण संख्याओं के किसी भी संयोजन के बाद कोई भी 2 अक्षर।RegEx पैटर्न किसी भी दो अक्षरों के बाद छह संख्या
These would be valid:
RJ123456
PY654321
DD321234
These would not
DDD12345
12DDD123
[a-zA-Z]{2}\d{6}
[a-zA-Z]{2}
का मतलब दो पत्र \d{6}
का मतलब 6 अंक
आप केवल बड़े अक्षरों चाहते हैं, तो:
[A-Z]{2}\d{6}
बहुत अच्छा काम करता है .... – Fergus
आप^से शुरू करना भूल गए हैं, अन्यथा, यदि आपके पास 2 से अधिक अक्षर हैं, तो यह आंशिक रूप से मेल खाता है। –
आप कुछ इस तरह की कोशिश कर सकते:
[a-zA-Z]{2}[0-9]{6}
यहाँ अभिव्यक्ति की नीचे एक ब्रेक है:
[a-zA-Z] # Match a single character present in the list below
# A character in the range between “a” and “z”
# A character in the range between “A” and “Z”
{2} # Exactly 2 times
[0-9] # Match a single character in the range between “0” and “9”
{6} # Exactly 6 times
यह एक विषय में कहीं भी मेल खाएगी। आप विषय के आसपास सीमाओं की जरूरत है तो आप निम्न में से कोई कर सकता है:
^[a-zA-Z]{2}[0-9]{6}$
कौन सा सुनिश्चित करता है कि पूरे विषय से मेल खाता है। I. विषय के पहले या बाद में कुछ भी नहीं है।
या
\b[a-zA-Z]{2}[0-9]{6}\b
जो यह सुनिश्चित करता है है विषय के प्रत्येक पक्ष पर एक word boundary।
जैसा कि @Phrogz द्वारा इंगित किया गया है, आप [0-9]
को \d
के लिए अन्य उत्तरों के रूप में बदलकर अधिक terse बना सकते हैं।
[a-zA-Z]{2}\d{6}
@Phrogz हाहा, यह मुझे लगता है कि वरीयता का मामला है, मैं आमतौर पर '\ d' का उपयोग करता हूं, लेकिन मुझे नहीं पता कि आज मुझे थोड़ा अलग महसूस हुआ। मैं आपके लिए कुछ और प्रयास करूँगा और इसे अपडेट कर दूंगा। – Robbie
+1 पूर्ण और pedantic होने के लिए;) – Phrogz
यह वास्तव में मदद की। रेगेक्स दोनों ने काम किया .. धन्यवाद – Fergus
मैं क्या regexp है पर निर्भर करता है जिस भाषा का आप उपयोग करते हैं, लेकिन अनौपचारिक रूप से, यह होगा:
[:alpha:][:alpha:][:digit:][:digit:][:digit:][:digit:][:digit:][:digit:]
जहां [:alpha:] = [a-zA-Z]
और [:digit:] = [0-9]
आप एक regexp भाषा कि परिमित पुनरावृत्ति की अनुमति देता है का उपयोग करते हैं, कि लगेगा की तरह: सही सिंटैक्स
[:alpha:]{2}[:digit:]{6}
आप कर रहे हैं विशेष रूप से भाषा पर निर्भर करता है उपयोग कर रहा है, लेकिन यह विचार है।
[[: अल्फा:]] के बजाय [: अल्फा:] 2alpha और 6 अंक खोजने के लिए [[: अल्फा:]] {2} [[: अंक:]] {6} –
पर अपने रेगुलर एक्सप्रेशन से स्वाद यह समर्थन करता है तो निर्भर करता है, मैं उपयोग कर सकते हैं:
\b[A-Z]{2}\d{6}\b # Ensure there are "word boundaries" on either side, or
(?<![A-Z])[A-Z]{2}\d{6}(?!\d) # Ensure there isn't a uppercase letter before
# and that there is not a digit after
सब कुछ तुम यहाँ की जरूरत है this quickstart guide में पाया जा सकता। एक सीधा समाधान [A-Za-z][A-Za-z]\d\d\d\d\d\d
या [A-Za-z]{2}\d{6}
होगा।
यदि आप केवल पूंजी अक्षरों को स्वीकार करना चाहते हैं तो [A-Za-z]
[A-Z]
के साथ प्रतिस्थापित करें।
"एबीसी 1234567" के बारे में क्या; क्या यह कभी हो सकता है? – Phrogz
दो से अधिक अक्षरों या 6 संख्याओं के लिए कोई मामला नहीं होगा। – Fergus
क्या "पूरी संख्या" हमेशा पश्चिमी अरबी अंकों '0-9' होगी, या फिर कभी भी [अन्य अंक] होंगे (http://en.wikipedia.org/wiki/Numerical_digit#Numerals_in_most_popular_systems)? – Phrogz