Eu sou muito novo em programação e tenho uma pergunta, estou tentando usar o método Regex para extrair horas, minutos e segundos de uma string e colocá-los em uma matriz, mas até agora posso fazê-lo com apenas um número:
int initialDay D = 0;
string startDay = Console.ReadLine(); //input: "It started 5 days ago"
var resultString = Regex.Match(startDay, @"\d+").Value;
initialDay = Int32.Parse(resultString); // initialDay here equals 5.
Como você consegue ler uma sequência 06: 11: 33 e transformar essas horas, minutos e segundos em uma matriz de entradas? Portanto, a matriz resultante seria assim:
int[] array = new int[] {n1, n2, n3}; // the n1 would be 6, n2 would be 11 and n3 would be 33
Obrigado pelo seu tempo de antecedência!
A menos que você esteja tentando aprender expressões regulares, não há razão para você executar essa análise por conta própria.
Use o
TimeSpan.Parse()
método para esta tarefa.fonte
Você pode usar
string.Split()
para obter uma matriz de elementos separados por:
. Então você pode percorrerint.Parse
os elementos e atribuí-los à matriz inteira.Ou você pode usar o Linq
Select()
para fazer a análise.fonte
Use
Regex.Matches(string input, string pattern)
assim:fonte
Em vez de expressão regular, você pode usar TimeSpan.Parse () Verifique https://docs.microsoft.com/pl-pl/dotnet/api/system.timespan.parse?view=netframework-4.8
fonte
Maneira RegEx:
A saída:
regex101
fonte
Se você tiver data como uma sequência simples, poderá usar o método split:
Então você pode fazer a lista int usando System.Linq:
fonte