Как найти последний алфавит в строке, используя c # .net

1

Я хочу узнать последний алфавит в строке в С#.net. Например, у меня есть 1234B0097D576676 и мне нужно найти D То же, что и в 0103D0001Y000001, результат должен быть Y

Для этого есть функция в PHP preg_match('/[^a-zA-Z]+$/', $scanned_code, $match); , Это вернет последний использованный символ в строке. Как мы можем сделать то же самое в С#.net? Заранее спасибо.

Теги:
string
preg-match

2 ответа

4
Лучший ответ

я бы выбрал linq soultion

string chars = "1234B0097D576676";
char Result = chars.LastOrDefault(x => Char.IsLetter(x));
0

Вы можете использовать положительное выражение в регулярном выражении [az](?=[^az]*$) с опцией Ignorecase чтобы получить эту последнюю букву.

var txt1 = "0103D0001Y000001";
var regex1 = new Regex(@"[a-z](?=[^a-z]*$)", RegexOptions.IgnoreCase  | RegexOptions.CultureInvariant);
var c1 = regex1.Matches(txt1).Cast<Match>().Select(d => d.Value.Trim()).ToList();

Вывод:

Изображение 174551

Ещё вопросы

Сообщество Overcoder
Наверх
Меню