में अलग-अलग लंबाई पैटर्न खोजने के लिए PATINDEX का उपयोग करके मैं उन्हें खोजने के लिए PATINDEX() का उपयोग करके कुछ वर्चर्स से बाहर निकलने के लिए देख रहा हूं। मैं प्रत्येक वर्कर स्ट्रिंग में जानता हूं, मुझे केवल पहली फ्लोट में दिलचस्पी है, लेकिन उनमें अलग-अलग लंबाई हो सकती है।टी-एसक्यूएल
उदा
'some text 456.09 other text'
'even more text 98273.453 la la la'
मैं सामान्य रूप से एक regex
"[0-9]+[.][0-9]+"
के साथ इन से मेल खाते हैं लेकिन, मैं + ऑपरेटर, जो PATINDEX स्वीकार करता है के लिए एक समान नहीं मिल सकता है जाएगा। तो वे मिलान किया जा करने के लिए (क्रमशः) के साथ की आवश्यकता होगी:
'[0-9][0-9][0-9].[0-9][0-9]' and '[0-9][0-9][0-9][0-9][0-9].[0-9][0-9][0-9]'
वहाँ किसी भी तरह से इन उदाहरण के दोनों मैच के लिए है एक ही मान्य PATINDEX पैटर्न के साथ varchars?
आपको रेगेक्स के साथ जाने की आवश्यकता हो सकती है। http://msdn.microsoft.com/en-us/magazine/cc163473.aspx – Paparazzi