elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  [SOURCE] MultiSplit7913 Un split diferente XD
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: [SOURCE] MultiSplit7913 Un split diferente XD  (Leído 4,988 veces)
raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: [SOURCE] MultiSplit7913 Un split diferente XD
« Respuesta #10 en: 15 Marzo 2011, 23:55 pm »

Pero para que lo queres ordenar si ya lo estas ingresando ordenadamente


En línea

79137913


Desconectado Desconectado

Mensajes: 1.169


4 Esquinas


Ver Perfil WWW
Re: [SOURCE] MultiSplit7913 Un split diferente XD
« Respuesta #11 en: 16 Marzo 2011, 12:47 pm »

HOLA!!!

Porque ... si yo tengo esto:
Código:
Pos.index(3,10,7)
Pos.Delimit(1,1,2)

Lo que va a dar es:
Código:
Respuesta(mid(texto,1,3),mid(texto,4,10),mid(texto,11,7))
                                              error^  ^

Entendes?

GRACIAS POR LEER!!!


En línea

"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*
raul338


Desconectado Desconectado

Mensajes: 2.633


La sonrisa es la mejor forma de afrontar las cosas


Ver Perfil WWW
Re: [SOURCE] MultiSplit7913 Un split diferente XD
« Respuesta #12 en: 16 Marzo 2011, 13:36 pm »

Deja, sigues sin entender lo que trato de decir :xD
En línea

79137913


Desconectado Desconectado

Mensajes: 1.169


4 Esquinas


Ver Perfil WWW
Re: [SOURCE] MultiSplit7913 Un split diferente XD
« Respuesta #13 en: 16 Marzo 2011, 13:52 pm »

HOLA!!!

 >:( bueno :/

GRACIAS POR LEER!!!
« Última modificación: 16 Marzo 2011, 14:01 pm por 79137913 » En línea

"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*
Psyke1
Wiki

Desconectado Desconectado

Mensajes: 1.089



Ver Perfil WWW
Re: [SOURCE] MultiSplit7913 Un split diferente XD
« Respuesta #14 en: 22 Marzo 2011, 19:09 pm »

La mejor forma que hay se me ocurre de hacerlo, con un Type, queda superbonito ;D :

Código
  1. Option Explicit
  2.  
  3. '// @ntdll.dll
  4. Private Declare Sub RtlMoveMemory Lib "ntdll.dll" (ByVal Destiny As Long, ByVal Source As Long, ByVal Bytes As Long)
  5.  
  6. Private Type SPLIT_POSITION
  7.    Mark        As Long
  8.    LenBDel     As Long
  9. End Type
  10.  
  11. Public Static Function MrFrogMultiSplit(ByRef strText$, ByRef strDelimiter$(), ByRef strOutputArray$()) As Boolean
  12. Dim strTmpDel$, lngLenBDel&, lngLenBText&, lngUBDel&, lngLBDel&
  13. Dim SP() As SPLIT_POSITION, tmpSP As SPLIT_POSITION
  14. Dim lngCount&, lngStart&, B2c&, Q&, C&
  15.  
  16.    lngLenBText = VBA.Strings.LenB(strText)
  17.    If (Not Not strDelimiter) And (lngLenBText > 0) Then
  18.        lngLBDel = LBound(strDelimiter)
  19.        lngUBDel = UBound(strDelimiter)
  20.  
  21.        ReDim SP(255) As SPLIT_POSITION
  22.        lngCount = 0
  23.  
  24.        For Q = lngLBDel To lngUBDel
  25.            strTmpDel = strDelimiter(Q)
  26.            lngStart = VBA.Strings.InStrB(1, strText, strTmpDel)
  27.  
  28.            If (lngStart - 1)>0 Then
  29.                lngLenBDel = VBA.LenB(strTmpDel)
  30.  
  31.                Do
  32.                    tmpSP.Mark = lngStart
  33.                    tmpSP.LenBDel = lngLenBDel
  34.  
  35.                    lngStart = VBA.Strings.InStrB(lngStart + lngLenBDel, strText, strTmpDel)
  36.  
  37.                    C = lngCount
  38.                    If C Then
  39.                        Do While tmpSP.Mark < SP(C - 1).Mark
  40.                            C = C - 1
  41.                            If C = 0 Then Exit Do
  42.                        Loop
  43.  
  44.                        If C < lngCount Then
  45.                            B2c = lngCount - C
  46.                            RtlMoveMemory VarPtr(SP(C + 1)), VarPtr(SP(C)), B2c + B2c + B2c + B2c + B2c + B2c + B2c + B2c
  47.                        End If
  48.                    End If
  49.                    SP(C) = tmpSP
  50.  
  51.                    lngCount = lngCount + 1
  52.                    If lngCount And &HFF Then
  53.                        ReDim Preserve SP(lngCount + &HFF) As SPLIT_POSITION
  54.                    End If
  55.                Loop While lngStart
  56.            End If
  57.        Next Q
  58.  
  59.        ReDim strOutputArray$(lngCount)
  60.        lngCount = lngCount - 1
  61.        lngStart = 1
  62.  
  63.        For Q = 0 To lngCount
  64.            strOutputArray$(Q) = VBA.Strings.MidB$(strText, lngStart, SP(Q).Mark - lngStart)
  65.            lngStart = SP(Q).Mark + SP(Q).LenBDel
  66.        Next Q
  67.  
  68.        If (lngStart And Not 1) < lngLenBText Then
  69.            strOutputArray$(Q) = VBA.Strings.MidB$(strText, lngStart, lngLenBText - lngStart + 2)
  70.        End If
  71.  
  72.        MrFrogMultiSplit = True
  73.    End If
  74. End Function

Código:
Private Sub Form_Load()
Const strTest$ = "My+name--is(((MrFrog====and+I--love(((frogs... :P+hahaha===="
Dim strArr$(), strDels$()
Dim FixIdeBug&()
Dim vItem

    Debug.Assert Not FixIdeBug Or App.hInstance

    strDels = Split("+ -- ((( ====", " ")

    If MrFrogMultiSplit(strTest, strDels, strArr) Then
        Debug.Print "---> "; Time$; " <---"
    
        For Each vItem In strArr
            Debug.Print vItem
        Next vItem
    End If
End Sub

DoEvents! :P
« Última modificación: 22 Marzo 2011, 20:19 pm por Mr.Frog™ » En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con split
Programación Visual Basic
Thaorius 8 2,782 Último mensaje 29 Noviembre 2005, 22:29 pm
por Thaorius
Duda con Split
Programación Visual Basic
NYlOn 2 1,462 Último mensaje 28 Noviembre 2005, 19:35 pm
por NYlOn
'Split' o 'Partir' Bmp ¿?
Programación Visual Basic
3k1n0x 8 2,517 Último mensaje 7 Julio 2008, 04:41 am
por 3k1n0x
No me va el split second :(
Juegos y Consolas
Hacker wifi 2 3,235 Último mensaje 2 Octubre 2010, 15:03 pm
por Hacker wifi
[C] Split
Programación C/C++
_*p 3 3,054 Último mensaje 19 Febrero 2011, 15:55 pm
por _*p
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines