Reden Rodriguez Ответов: 3

Как выбрать только буквы в значении?


у меня есть стоимость счетов MGT &TREASURY - офис помощника вице - президента- 1231

как мне получить только счета MGT &TREASURY - офиса помощника вице-президента?

Что я уже пробовал:

я попробовал этот код
var onlyLetters = new string(myString.Where(char.IsLetter).ToArray());
но это приведет к удалению всего пространства
я только хочу стереть - 1231

3 Ответов

Рейтинг:
2

Wastedtalent

Вы можете попробовать использовать регулярные выражения:

Проверка того, что строка содержит только буквы в C# - переполнение стека[^]


Maciej Los

OP хочет удалить цифры из строки...

Wastedtalent

Да, я полагаю, что вопрос был сформулирован плохо, в любом случае, согласно вашему ответу, Regex будет делать эту работу. Может быть, я мог бы поставить на место подстрекателя линка.

Рейтинг:
0

Maciej Los

Если вы хотите удалить 123 (цифры) из строки, которую вы можете использовать Регулярное выражение.Заменить способ[^]. Видеть:

string s = @"ACCOUNTS MGT & TREASURY - OFFICE OF THE ASSISTANT VICE PRESIDENT - 1231";
string pattern = @"\d";
string replacement = string.Empty;
var result = Regex.Replace(s, pattern, replacement, RegexOptions.IgnoreCase);


Результат:
ACCOUNTS MGT & TREASURY - OFFICE OF THE ASSISTANT VICE PRESIDENT -


Рейтинг:
0

F. Xaver

Или вы следуете своему подходу LINQ. Просто немного модифицированный
потому что если вы просто хотите избавиться от числовых цифр и сохранить весь текст и символы

var myString = "ACCOUNTS MGT & TREASURY - OFFICE OF THE ASSISTANT VICE PRESIDENT - 1231";
var onlyLetters = new String(myString.Where(_ => !char.IsDigit(_)).ToArray());

=> ACCOUNTS MGT & TREASURY - OFFICE OF THE ASSISTANT VICE PRESIDENT -