none
Separar uma string por um certo numero de palavras RRS feed

  • Pergunta

  • Olá estou precisando separa uma string por um determinado numero de palavras e armazenalas em um array por exemplo...

    ExTongue Tiedeparando por 5.

    String = Olá estou precisando separa uma string por um determinado numero de palavras e armazenalas em um array por exemplo...

    Olá estou precisando separa uma
    string por um determinado numero
    de palavras e armazenalas em
    um array por exemplo...


    **********************
    para poder imprimir desta forma em cima por exemplo

    alguém pode me ajudar Smile






    quinta-feira, 22 de maio de 2008 20:12

Respostas

  • Module Module1

        Sub Main()
            Dim MyString = "Este é meu texto de exemplo que vou quebrar em, digamos, cinco palavras por linha. Ah sim, e este é um aplicativo de console usando 3.5 =P"
            Dim Words = MyString.Split(" "c)
            Dim BreakOn = 5
            Dim CurrentWord = 0
            Dim Final As New Text.StringBuilder

            For Each Word In Words
                Final.Append(Word)

                CurrentWord += 1

                If CurrentWord < 5 Then
                    Final.Append(" ")
                ElseIf CurrentWord = 5 Then
                    Final.AppendLine("")
                    CurrentWord = 0
                End If
            Next

            Console.WriteLine(Final.ToString)
        End Sub

    End Module


    Resultado:

    Este é meu texto de
    exemplo que vou quebrar em,
    digamos, cinco palavras por linha.
    Ah sim, e este é
    um aplicativo de console usando
    3.5 =P
    Press any key to continue . . .


    É isso?
    E sim, VB... O importante é entender a lógica, não copy'n'paste =P
    sábado, 19 de julho de 2008 03:03

Todas as Respostas

  • Olá o tentei usar o split o problema é que não consegui arrumar alguma forma de separar um número de palavras a ser definido (variavel)... sendo que com o split so conseguir fazer toda vez que tenha um espaço..

    se tiver alguma idéia me ajude por favor...

    tive uma idéia tb de concatenar as palavras até um numero especifico após separar mais não fui muito bem seucedido na lógica..heeheh


    Obrigado

    []'s
    domingo, 25 de maio de 2008 21:57
  •  

    Olá alguém tem alguma outra sugestão? Obrigado...
    sábado, 31 de maio de 2008 19:18
  • Module Module1

        Sub Main()
            Dim MyString = "Este é meu texto de exemplo que vou quebrar em, digamos, cinco palavras por linha. Ah sim, e este é um aplicativo de console usando 3.5 =P"
            Dim Words = MyString.Split(" "c)
            Dim BreakOn = 5
            Dim CurrentWord = 0
            Dim Final As New Text.StringBuilder

            For Each Word In Words
                Final.Append(Word)

                CurrentWord += 1

                If CurrentWord < 5 Then
                    Final.Append(" ")
                ElseIf CurrentWord = 5 Then
                    Final.AppendLine("")
                    CurrentWord = 0
                End If
            Next

            Console.WriteLine(Final.ToString)
        End Sub

    End Module


    Resultado:

    Este é meu texto de
    exemplo que vou quebrar em,
    digamos, cinco palavras por linha.
    Ah sim, e este é
    um aplicativo de console usando
    3.5 =P
    Press any key to continue . . .


    É isso?
    E sim, VB... O importante é entender a lógica, não copy'n'paste =P
    sábado, 19 de julho de 2008 03:03
  • Ops... Onde tem os 5 hardcoded acima, colocar o conteúdo da variável BreakOn, que é onde você define quantas palavras existirão por linha... pequeno glitch =P

    Module Module1

        Sub Main()
            Dim MyString = "Este é meu texto de exemplo que vou quebrar em, digamos, cinco palavras por linha. Ah sim, e este é um aplicativo de console usando 3.5 =P"
            Dim Words = MyString.Split(" "c)
            Dim BreakOn = 5
            Dim CurrentWord = 0
            Dim Final As New Text.StringBuilder

            For Each Word In Words
                Final.Append(Word)

                CurrentWord += 1

                If CurrentWord < BreakOn Then
                    Final.Append(" ")
                ElseIf CurrentWord = BreakOn Then
                    Final.AppendLine("")
                    CurrentWord = 0
                End If
            Next

            Console.WriteLine(Final.ToString)
        End Sub

    End Module
    sábado, 19 de julho de 2008 03:04
  •  

    olá muito obrigado é exatamente isso que eu estou querendo procurei e me informei com vários amigos experientes e ninguém tinha uma solução pra isso.
    sábado, 19 de julho de 2008 14:25