C# में स्ट्रिंग से अक्षरों, अंकों और डैश के अलावा सभी कैरेक्टर कैसे हटाएं?
सभी को नमस्कार! मैं C# में नौसिखिया हूँ और मुझे ऐसी समस्या का सामना करना पड़ा: मुझे स्ट्रिंग से अक्षरों (लैटिन और सिरिलिक), अंकों और डैश (-) के अलावा सभी कैरेक्टर हटाने हैं। उदाहरण के लिए, एक स्ट्रिंग है:
string input = "Hello-World! How are you? (test) 123-456 #2024";
इससे यह प्राप्त होना चाहिए:
Hello-World How are you test 123-456 2024
अर्थात, विराम चिह्न, स्पेस, कोष्ठक, हैशटैग और अक्षरों, अंकों और डैश के अलावा बाकी सब कुछ हटा दिया जाता है।
मैंने [^a-zA-Z0-9-] पैटर्न के साथ Regex.Replace का उपयोग करने की कोशिश की, लेकिन यह सिरिलिक अक्षरों को हटा देता है, जबकि मुझे उन्हें रखना है। अगर मैं а-яА-Я जोड़ता हूँ, तो स्पेस के साथ कुछ समस्याएं रहती हैं — वे भी हटा दिए जाते हैं, जबकि मुझे स्पेस को रखना है।
कृपया बताएं कि सही regular expression कैसे बनाएं या कोई और तरीका है? अधिमानतः
```