none
Como extrair datas de uma string? RRS feed

  • Discussão Geral

  • Olá

    Gente, como posso extrair as datas de uma string?

    Exemplo:

    "AND Vencimento 2018/03/03 AND 2018/04/04" 

    Em outros casos eu apenas usaria o replace para remover as letras, mas como as datas estão inversas (ano/mês/dia) eu preciso formata-las para "dia/mês/ano" após extrair.

    Desde já agradeço.

    quarta-feira, 21 de março de 2018 12:11

Todas as Respostas

  • Eliseu5,

       Eu faço uma operação, eu chamo de ... "truque sujo"... veja se pode ajudar-te... Exemplo:

        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Dim strTeste As String = "AND Vencimento 2018/03/03 AND 2018/04/04"
            Dim strDataInicio As String
            Dim strDataFim As String
    
            strDataInicio = strTeste.Substring(strTeste.Length - InStr(1, strTeste, "/") - 5, 10)
            strDataFim = strTeste.Substring(InStrRev(strTeste, "/") - 8, 10)
        End Sub

        Eu uso como base o próprio "/".

        - Na data início mandei procurar a posição da "/", depois subtraí do tamanho da string e subtraí "5" para ajustar o ano + a posição da barra.

        - Na data fim, mandei procurar de trás para frente e subtraí "8", para ajustar o dia, o mês e suas barras.

        Detalhe: Sempre pegar 10 posições, pois é o tamanho da data. Se a data aparecer assim: "2018/4/4" estraga minha lógica...

        Espero que possa ajudar.

    []'s,
    Fabio I.

    • Editado Fabio I quarta-feira, 21 de março de 2018 12:42
    quarta-feira, 21 de março de 2018 12:38
  • Olá Fabio

    Muito bom, fiz alguns ajustes devido a string e show de bola.

    Muito obrigado! :)

    quarta-feira, 21 de março de 2018 19:51
  • Eliseu5,

       Fico feliz em ajudar.

    []'s,
    Fabio I.
    quarta-feira, 21 de março de 2018 20:00