[RETO] + Funcion Extraer Numeros de Cadenas!

Iniciado por x64core, 4 Enero 2012, 23:06 PM

0 Miembros y 5 Visitantes están viendo este tema.

BlackZeroX

Citar
¿Y eso no es trampa? :huh: Se supone que sTest lo debe dejar como está, como las demás funciones, ¿no?

Si fuese asi entonces no deberia ser byref más bien byval si es que no se quisiera modificar sTest... aun asi al no estar bien definidas las reglas se vale todo, es decir NUNCa se dice por donde retornar los datos ni que hacerle a sTest...

Dulces Lunas!¡.
The Dark Shadow is my passion.

79137913

HOLA!!!

Ejemmm hoy es ocho! y en españa ya es 9 ponganse las pilas!

GRACIAS POR LEER!!!
"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*

x64core

Cita de: BlackZeroX (Astaroth) en  8 Enero 2012, 23:24 PM
OJO mi función limpia sTest en otras palabras, despues de mi funcion sTest es una cadena vacia... por lo tanto deberian hacerse los test de otra menera:

por ejemplo...


   t.Reset
   For x = 1 To LOOPS
       sTest = STR
       RUSTICOnumbers_eCode sTest
   Next x



Dulces Lunas!¡.

:¬¬
Ya veo...
bien estrictamente eso seria trampa v_v pero como el reto yo no lo especifique estrictamente PORQUE NO ME IMAGINE que esto pasaria, bueno
mas bien no recordaba/no crei que la usaran, la tecnica que usaron karcrack y BlackZeroX hoy ya no se puede hacer nada :P
De nuevo el test de todas las funciones con cadenas por valor...

Cita de: 79137913 en  9 Enero 2012, 02:03 AM
HOLA!!!
Ejemmm hoy es ocho! y en españa ya es 9 ponganse las pilas!
GRACIAS POR LEER!!!

no me e podido conectar porque no e tenido red U_U
aqui en mexico faltan mas de 3 horas U_U


79137913

HOLA!!!

Cita de: Psyke1 en  9 Enero 2012, 00:30 AM
OJO mi función limpia sTest en otras palabras, despues de mi funcion sTest es una cadena vacia... por lo tanto deberian hacerse los test de otra menera:
Comprendo, ahora encaja todo... por cierto...
¿Y eso no es trampa? :huh: Se supone que sTest lo debe dejar como está, como las demás funciones, ¿no?

DoEvents! :P

+1

GRACIAS POR LEER!!!
"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*

x64core

Resultados Finales:

@Karcrack tu funcion me explotaba siempre... :P

En un for de 1000...

79137913:

1: 4.819
2: 4.662
3: 4.676
4: 4.911
5: 4.729


BlackZeroX

1: 2.637
2: 2.630
3: 2.720
4: 2.673
5: 2.634

Elemental code:

1: 134.858
2: 136.092
3: 133.272
4: 138.173
5: 133.510

RHL:

1: 7.164
2: 7.107
3: 7.183
4: 7.115
5: 7.110


Psyke1

Bueno, aquí dejo como sería la forma más rápida con RegExp por si a alguien le interesa:
Código (vb) [Seleccionar]

'cGetNums.cls
Option Explicit
Private oRegExp As Object

Private Sub Class_Initialize()
    Set oRegExp = CreateObject("VBScript.RegExp")
    With oRegExp
        .Global = True
        .Pattern = "\D+"
    End With
End Sub

Public Static Function pGetNums(ByRef sText As String) As String
    pGetNums = oRegExp.Replace(sText, vbNullString)
End Function

Private Sub Class_Terminate()
    Set oRegExp = Nothing
End Sub


Ejemplo:
Código (vb) [Seleccionar]

Option Explicit

Private Sub Form_Load()
Dim c As New cGetNums
    Debug.Print cGetNums("0asdasd1sa sd sd 2 3  sdfdfdsf456       7!!!!!!!!!!!!!!!!!!8?????9asd")
    Set c = Nothing
End Sub


Resultado:
0123456789

No es muy rápida, pero bueno, tan solo participaba respetando las normas. :silbar:

DoEvents! :P