Я полностью неспособен к регулярным выражениям, поэтому мне нужна помощь с проблемой, которая, по моему мнению, лучше всего будет решена с помощью регулярных выражений.
У меня есть список строк в С#:
List<string> lstNames = new List<string>();
lstNames.add("TRA-94:23");
lstNames.add("TRA-42:101");
lstNames.add("TRA-109:AD");
foreach (string n in lstNames) {
// logic goes here that somehow uses regex to remove all special characters
string regExp = "NO_IDEA";
string tmp = Regex.Replace(n, regExp, "");
}
Мне нужно иметь возможность перебирать список и возвращать каждый элемент без каких-либо специальных символов. Например, первым пунктом будет "TRA9423", второй будет "TRA42101", а третий элемент будет TRA109AD.
Есть ли регулярное выражение, которое может выполнить это для меня?
Кроме того, список содержит более 4000 элементов, поэтому мне нужно, чтобы поиск и замена были эффективными и быстрыми, если это возможно.
EDIT: Я должен был указать, что любой символ рядом с a-z, A-Z и 0-9 является особенным в моих обстоятельствах.