tincho 15-04-2021, 11:13
Esta la hizo Christof, de la lista internacional de Gambas, y yo la adapte.
Fue la que obtuvo la marca de velocidad mas alta (con FAST).
Código:
'' <b>RAD Extension.</b><br>
'' It removes the spaces at the beginning and the end of
'' a <b>s</b> and if there are repeated spaces, it converts them into one.

Static Public Function Trim(s As String) As String

  Dim sOut As String

  sOut = Trim(RTrim(s))
  While InStr(sOut, "  ")
    sOut = Replace(sOut, "  ", " ")
  Wend

  Return sOut

End
Saludos.
tincho 15-04-2021, 11:11
Esta hace lo mismo que la función de Go que se llama igual.
Código:
'' <b>RAD Extension.</b><br>
'' Converts the first character of each word to upper case.
'' GO Package strings

Static Public Function Title(s As String) As String

  Dim sTmp As String
  Dim word As String
  Dim aOut As New String[]

  sTmp = Trim(RTrim(s))
  While InStr(sTmp, "  ")
    sTmp = Replace(sTmp, "  ", " ")
  Wend

  For Each word In Split(sTmp, " ")
    aOut.Add(Upper(Mid(word, 1, 1)) & Mid(Lower(word), 2))
  Next

  Return aOut.Join(" ")

End
Saludos.
tincho 15-04-2021, 11:07
Esta función la hice porque al leer datos de planos dwg, con la librería LibreDWG, algunos textos no se representaban correctamente debido a errores de codificación.
Tal vez luego pueda evolucionar a una versión mas general y amplia que abarque mas casos.
Código:
'' <b>RAD Extension.</b><br>
'' Returns a string with all its characters converted to ascii or utf-8 when bad codification ocurr.

Static Public Function Flat(s As String) As String

  Dim k As Integer = 1
  Dim q As Integer
  Dim r As Integer

  Dim uni As String
  Dim stx As New String[]
  Dim u As String
  Dim rep As String
  Dim i As Integer

  Repeat
    q = InStr(s, "\\U+", k)
    If q > 0 Then
      Inc r
      uni = String.Mid(s, q, 7)
      stx.Add(uni)
      k = q + String.Len("\\U+")
    Endif
  Until InStr(s, "\\U+", k) = 0 Or k > String.Len(s)

  For Each u In stx
    i = Val("&h" & String.Mid(u, 4, 4) & "&")
    rep = String.Chr(i)
    s = Replace(s, u, rep)
  Next

  Return s

End
Saludos.
Páginas (557):    1 455 456 457 458 459 557   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 285
Último miembro: XLRG
Temas del foro: 1,720
Mensajes del foro: 8,934
Últimos temas
Archivos .ods
Foro: General
Último mensaje por: tincho, 01-07-2025, 18:54
Respuestas: 8 - Vistas: 161
Publicidad
Foro: Sobre gambas-es.org
Último mensaje por: tincho, 01-07-2025, 18:48
Respuestas: 6 - Vistas: 294
Web con gambas, a ver si ...
Foro: WebApp/WebForms
Último mensaje por: tincho, 01-07-2025, 17:47
Respuestas: 41 - Vistas: 32,382
Un sistema de ayudas cont...
Foro: Videotutoriales
Último mensaje por: guizans, 22-06-2025, 19:55
Respuestas: 3 - Vistas: 274
Crear una aplicación para...
Foro: Bases de Datos
Último mensaje por: Shell, 29-05-2025, 20:11
Respuestas: 11 - Vistas: 1,420
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.