मैं रेगेक्स के साथ स्ट्रिंग को पार्स करने के लिए एक्सेस वीबीए का उपयोग कर रहा हूं।वीबीए पॉजिटिव लुकहेड बहुत लालची है
regexSearch("^.+(?=[ _-]+mp)", "153 - MP 13.61 to MP 17.65")
मैं पाने के लिए उम्मीद कर रहा हूँ:
Function regexSearch(pattern As String, source As String) As String
Dim re As RegExp
Dim matches As MatchCollection
Dim match As match
Set re = New RegExp
re.IgnoreCase = True
re.pattern = pattern
Set matches = re.Execute(source)
If matches.Count > 0 Then
regexSearch = matches(0).Value
Else
regexSearch = ""
End If
End Function
जब मैं इसके साथ परीक्षण: यहाँ मेरी regex समारोह है
153
क्योंकि यह और का पहला उदाहरण के बीच केवल अक्षर 'एमपी' लुकहेड में निर्दिष्ट कक्षा में हैं।
लेकिन मेरी वास्तविक वापसी मान है:
153 - MP 13.61 to
क्यों यह दूसरा 'सांसद' अप करने के लिए कैप्चर कर रहा है?
कि इसे हल। – sigil
उस सिगिल को सुनकर अच्छा लगा। –
+1 अच्छी तरह से किया गया। – brettdj