2017-08-15 9 views
6

को देखते हुए में कुछ शामिल नहीं करने केरास्ता रेगुलर एक्सप्रेशन कैप्चर समूह

<123> 

मुझे परिणाम मैं चाहता हूँ देता है लेकिन कोण कोष्ठक भी शामिल है। जो ठीक है क्योंकि मैं आसानी से खोज और प्रतिस्थापन कर सकता हूं। मैं बस सोच रहा था कि अभिव्यक्ति में शामिल करने का कोई तरीका था या नहीं?

var input = "test <123>"; 
var results = Regex.Matches(input, "<(.*?)>") 
    .Cast<Match>() 
    .Select(m => m.Groups[1].Value) 
    .ToList(); 

m.Groups[1].Value आप कैप्चरिंग समूह # 1 मूल्य प्राप्त करने देता है:

+0

आप का प्रयास किया था '" <(.*?)> "' और 'पुनर्प्राप्त Group'? –

उत्तर

4

आप एक कैप्चरिंग समूह उपयोग करने के लिए की जरूरत है।

और एक बेहतर, अधिक कुशल regex <([^>]*)> हो सकता है (यह < से मेल खाता है, तो मेल खाता है और किसी भी > के अलावा अन्य शून्य या अधिक वर्ण समूह 1 में कब्जा और फिर बस > मेल खाता है)। देखें regex demo:

enter image description here

संबंधित मुद्दे