मुझे regex का उपयोग करके एक इनपुट को मान्य करने की आवश्यकता है (मुझे लगता है कि यह बेहतर है) लेकिन इस इनपुट में एक या एक से अधिक "वाक्य" हो सकते हैं और [A-Z] आकार 1. मैं यह कैसे कर सकता हूं? उदा .:
A,B,D,G,J,X
कोई दोहराव पत्र नहीं, लेकिन यह मान्य मैं कोड में करता हूं। मुझे लगता है कि रेगेक्स बेहतर है "क्योंकि एक लूप और विभाजन का उपयोग करके पत्र के बजाय पूरे वाक्य को मान्य किया जाता है। मेरी अंग्रेजी जंग खा रही है, सुधार करने के लिए कुछ मदद की सराहना करते हैं =)
उत्तर:
जवाब के लिए 0 № 1शायद यह आपकी मदद कर सकता है ([A-Z],)+[A-Z]
यह अपरकेस अक्षर के सीरी से मेल खाएगा, उसके बाद अल्पविराम से, और अपरकेस अक्षर से समाप्त होगा:
A,B,D,G,J,X -> matches
A,B,DE,G,J,X -> not matches
A,B,D,G,J,XY -> not matches
जवाब के लिए 0 № 2
ध्यान दें, मान लें कि आप एक ही पत्र चाहते हैं
यदि आप केवल मान्य करना चाहते हैं:
if (/([A-Z]*)?,([A-Z]*),?/.test(subject)) {
// Successful match
} else {
// Match attempt failed
}
यदि आप अर्क मान प्राप्त करने के लिए उपयोग कर रहे हैं:
result = subject.match(/([A-Z]*)?,([A-Z]*),?/g);