Usuário com melhor resposta
Como verificar se uma string é formada por números e termina com uma letra?

Pergunta
-
Preciso verificar uma string de até 12 caracteres que poderá ter a seguintes disposição: 12345e ou 4e ou 100e, ou seja, constituída somente por números menos o último caractere que será sempre uma letra. Como fazer essa checagem? Grato pela ajuda!
Respostas
-
Você pode usar expressão regular para isto:
using System; using System.Text.RegularExpressions; public class Program { public static void Main() { var texto = "1233a"; var padrao = @"\d{1,11}[a-z]"; Regex r = new Regex(padrao, RegexOptions.IgnoreCase); Console.WriteLine(r.IsMatch(texto)); } }
https://dotnetfiddle.net/RJw0Ng
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
- Editado Juliano Nunes Silva Oliveira terça-feira, 20 de fevereiro de 2018 21:33
- Sugerido como Resposta Mariano1776 terça-feira, 20 de fevereiro de 2018 21:40
- Marcado como Resposta Denis Valjean terça-feira, 20 de fevereiro de 2018 21:48
-
Se pode apenas a letra e:
^\d{1,11}e$
Se puder algumas letras específicas, como e, f, g:
^\d{1,11}[efg]$
PS: Tinha ficado sem os indicadores de início e fim.
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
- Marcado como Resposta Denis Valjean terça-feira, 20 de fevereiro de 2018 22:18
Todas as Respostas
-
Você pode usar expressão regular para isto:
using System; using System.Text.RegularExpressions; public class Program { public static void Main() { var texto = "1233a"; var padrao = @"\d{1,11}[a-z]"; Regex r = new Regex(padrao, RegexOptions.IgnoreCase); Console.WriteLine(r.IsMatch(texto)); } }
https://dotnetfiddle.net/RJw0Ng
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
- Editado Juliano Nunes Silva Oliveira terça-feira, 20 de fevereiro de 2018 21:33
- Sugerido como Resposta Mariano1776 terça-feira, 20 de fevereiro de 2018 21:40
- Marcado como Resposta Denis Valjean terça-feira, 20 de fevereiro de 2018 21:48
-
Você pode usar expressão regular para isto:
using System; using System.Text.RegularExpressions; public class Program { public static void Main() { var texto = "1233a"; var padrao = @"\d{1,11}[a-z]"; Regex r = new Regex(padrao, RegexOptions.IgnoreCase); Console.WriteLine(r.IsMatch(texto)); } }
https://dotnetfiddle.net/RJw0Ng
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
-
Se pode apenas a letra e:
^\d{1,11}e$
Se puder algumas letras específicas, como e, f, g:
^\d{1,11}[efg]$
PS: Tinha ficado sem os indicadores de início e fim.
Juliano Nunes - http://linkedin.com/in/julianonunes
Lembre-se de clicar em "Votar como útil" e "Marcar como Resposta" caso tenha respondido sua dúvida.
Remember to "Vote as Helpful" and "Mark as Answer" if your question has been answered.
- Marcado como Resposta Denis Valjean terça-feira, 20 de fevereiro de 2018 22:18
-