Jump to content
Fórum Script Brasil
  • 0

Duvida VB 2008


VBMaster

Question

Ola, este e meu primeiro tópico no forum e eu estou com uma duvida que esta atrapalhando meu projeto.

Este projeto e um prototipo de um compilador, mas tenho um problema. Estou tentando fazer um comando que requer entrada de dados do tipo Integer,

mas não sei como fazer isso. Aqui vai o trecho com o problema:

If text_c.Text.ToLower.Contains("beep()" ) Then

Beep()

End If

Sendo que entre os parenteses, deve ser lido um valor tipo inteiro que vai contar a quantidade de "beeps". Mas pra isso eu precisaria ler a variavel antes de fechar os parenteses.

Se puderem me ajudar, ficarei muito grato!

Edited by VBMaster
Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Cara, não vi seu tópico antes...

Não entendi muito bem. Se você quer testar uma variável inteira, o VB possui uma função nativa chamada IsNumeric, que retorna True/False.

Se você tiver o valor de entrada e retornar False nessa função, você executa o beep, por exemplo.

Link to comment
Share on other sites

  • 0

Acho que o que você quer é mais ou menos isso:

Dim sTexto As String = "beep(10)"

Dim função As String = "beep"
Dim posfunc As Integer = sTexto.IndexOf(função)
Dim parâm As Integer = 0

If posfunc >= 0 Then
    Dim posp1 As Integer = sTexto.IndexOf("(", posfunc)

    If posp1 >= 0 Then
        Dim posp2 As Integer = sTexto.IndexOf(")", posp1)

        If Integer.TryParse(sTexto.Substring(posp1 + 1, posp2 - posp1 - 1), parâm) Then
            For i As Integer = 1 To parâm
                Beep()
            Next
        End If
    End If
End If

Em "sTexto" está o código e a função a ser procurada é "beep". Depois de achada, procura-se o "(" depois dela e depois deste procura-se o ")". No final pega-se o que está entre os dois e tenta-se converter para inteiro e caso tenha sucesso será executado o beep o tanto de vezes descrito.

Abraços,

Graymalkin

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...