Ir para conteúdo
Fórum Script Brasil
  • 0

Procurando Caracter Em Uma String


@line

Pergunta

8 respostass a esta questão

Posts Recomendados

  • 0

Public Function QtdeString(MyString As String, Ocorrencia As String) As Long

Dim Contador As Long

Dim AuxLocal As Long

Dim AuxString As Long

Dim Aux As Long

AuxLocal = 1

Contador = 0

AuxString = 1

Aux = 1

While AuxLocal <> 0

AuxLocal = InStr(Aux, MyString, Ocorrencia)

Aux = AuxLocal + Len(Ocorrencia)

If AuxLocal <> 0 Then

Contador = Contador + 1

End If

Wend

QtdeString = Contador

'Return Contador

End Function

Para chamar faça assim:

QtdeString("TESTE","T")

Irá retornar 2.

Precisando estamos aí

Link para o comentário
Compartilhar em outros sites

  • 0
Na verdade eu acho que não. A função resultaria nesse valor, atuando como uma variável. Estou errado?

Você quer dizer usando algo assim...

if QtdeString("TESTE","T")=2 then
... ? Se for, tanto faz fazer dessa maneira quanto fazer:
Qtde=QtdeString("TESTE","T")
if Qtde=2 then

Dá no mesmo. Apenas no segundo caso você deu um "nome" para identificar o valor retornado e no primeiro caso não.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

'Esse código que faz a mesma coisa, só que eu acho menor...

Function QuantasVezes(Letra As String, Carac As String) As Integer

Dim NuVezes As Integer

Dim X As Integer

For X = 1 To Len(Carac)

If Mid(Carac, X, 1) = Letra Then

NuVezes = NuVezes + 1

End If

Next X

QuantasVezes = NuVezes

End Function

'para chamar

MsgBox QuantasVezes("a", "papagaio")

Link para o comentário
Compartilhar em outros sites

  • 0
Isso que eu quis dizer. Porém, esse nome, seria mais uma variável a ser criada, o que acarretaria em mais uma (insignificante) ocupação da memória do computador, certo?

Ambos fazem isso (ou sejam, ocupam um determinado espaço após a expressão ter sido desenvolvida). Porém, nesse caso, talvez o fato de ter uma variável ocupe um pouco mais de espaço, já que a mesma será uma Variant. Já se ela fosse declarada, acho que não haveria diferença.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,6k
×
×
  • Criar Novo...