|
8881
|
Programación / .NET (C#, VB.NET, ASP) / Re: Problema en Visual Basic -Net (Al remplazar una palabra)
|
en: 9 Junio 2013, 19:16 pm
|
De momento me quedaré con el código ''largo''
A = q B = w
a = &q b = &w
1. ¿Eres consciente de que si usas 2 caracteres entonces mi código requiere de ciertas modificaciones, verdad?, deberías recorrer el string en bloques de 2 caracteres, ...Pero si además para las letras mayúsculas vas a usar 1 caracter (A = q) y para las minusculas 2 (a = &q), entonces no puedes recorrer el string ni por caracteres de "1" longitud ni de "2", a menos que ese caracter especial (&) lo dejes sin cifrar. 2. Creo que estás intentando reinventar la rueda sin saberlo, porque si estás siguiendo un orden en concreto "qwerty...blablabla" entonces lo que estás haciendo es una especie de variante del método " Caesar", y entonces diréctamente puedes usar el código "corto": http://crypo.in.ua/tools/eng_caesar.php3. Si te fijas bien en mi código "largo" los caracteres son todos aleatórios, si quieres seguir un orden en concreto mejor no lo uses, hay cosas más fáciles xD. Salu2
|
|
|
8882
|
Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets)
|
en: 9 Junio 2013, 18:59 pm
|
Resalta en colores la sintaxis de un script. (Lo convierte a código HTML) http://colorcode.codeplex.com/releases/view/103657#Region " [ColorCode] Color Code " ' [ColorCode] Color Code ' ' // By Elektro H@cker ' ' Instructions: ' 1. Add a reference to ColorCode.dll ' ' Examples: ' HtmlTextBox1.Text = Color_Code(IO.File.ReadAllText("c:\Code.vb"), ColorCode.Languages.VbDotNet) ' HtmlTextbox1.Text = Color_Code(IO.File.ReadAllText("c:\Code.cs"), ColorCode.Languages.CSharp) Private Function Color_Code(ByVal Code As String, ByVal Language As ColorCode.ILanguage) As String Return New ColorCode.CodeColorizer().Colorize(Code, Language) End Function #End Region
Randomizar el contenido de un Array de tipo String: #Region " Randomize String Array " ' [ Randomize String Array Function ] ' ' Examples : ' Dim MyArray As Array = Randomize_String_Array({"a", "b", "c", "d", "e"}) ' Result: {"d", "a", "c", "e", "b"} Dim Array_randomizer As New Random Private Function Randomize_String_Array(ByVal array() As String) As Array Return array.OrderBy(Function() Array_randomizer.Next).ToArray End Function #End Region
Randomizar el contenido de cualquier tipo de Array: #Region " Randomize Array " ' [ Randomize Array ] ' ' Examples : ' Dim strarray() As String = {"a", "b", "3"} ' Dim IntArray As Array = {1, 2, 3} ' Randomize_Array(strarray) ' Randomize_Array(IntArray) Dim Array_Randomizer As New Random Public Sub Randomize_Array(ByVal array As Array) For i As Int64 = array.Length To 1 Step -1 Dim j As Int64 = Array_Randomizer.Next(i) Dim tmp As Object = array(j) array(j) = array(i - 1) array(i - 1) = tmp Next End Sub #End Region
Une el contenido de un Array de cualquier tipo (hace unos días posteé un código parecido, pero solo funcionaba para arrays de string) #Region " Join Array " ' [ Join Array Function ] ' ' Examples : ' ' Dim StrArray() As String = {"a", "b", "c"} ' String array ' Dim IntArray As Array = {1, 2, 3} ' Integer array ' MsgBox(Join_Array(StrArray, " ")) ' Result: a b c ' MsgBox(Join_Array(IntArray, " ")) ' Result: 1 2 3 Private Function Join_Array(ByVal array As Array, ByVal Separator As String) Return String.Join(Separator, array.Cast(Of Object).Select(Function(x) x.ToString)) End Function #End Region
cifrar-descifrar un string de manera selectiva (usando los caracteres que nos de la gana, por eso el código es así de largo) #Region " Encrypt-Decrypt String Selective " ' [ Encrypt-Decrypt String Selective Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Encrypt_Text("Hello world")) ' Result: à`336 L6ë3m ' MsgBox(Decrypt_Text("à`336 L6ë3m")) ' Result: Hello world ' MsgBox(Encrypt_Text("¡ Hello world !", True)) ' Result: = <ÁÍÍÀ cÀ,Í3 Ï ' MsgBox(Decrypt_Text("= <ÁÍÍÀ cÀ,Í3 Ï", True)) ' Result: ¡ Hello world ! Public Shared Function Encrypt_Text(ByVal str As String, _ Optional ByVal Include_Special_Characters As Boolean = False) As String Dim Temp_String As String = String.Empty Dim Replacement_Found As Boolean = False Static Characters As Char() Static Replacements As Char() If Include_Special_Characters Then Characters = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª<>¡!¿?()[]{}/\|·.:;,-+=_~¬^'`´¨*$%&€#@""".ToCharArray Replacements = {"h", "ó", "Ó", "3", "Á", "è", "A", "^", "ö", "~", "O", "Í", "€", "q", "ú", "À", "Ç", "È", ",", "ì", "i", "ï", "ò", "c", "0", "ñ", "4", "l", "Ü", "ª", "¬", "S", "&", "?", "<", ":", "T", "*", "e", ".", "R", "É", "D", "7", "9", "Ú", "n", "¿", "L", "m", "¨", "Ë", "]", "Ä", "Q", "w", "V", "'", "G", "K", "é", "v", "ù", "}", "P", "E", "X", "+", "í", "´", "$", "{", "_", "Ñ", "u", "ë", "H", "g", "d", "x", "8", "/", "ä", "#", "|", "-", "1", "M", "Ò", "o", ")", "N", "Y", "á", "Ù", "Ì", "%", "ç", """", "a", "=", "Ï", "z", "Ö", ">", ";", "2", "6", "B", "y", "b", "`", "s", "5", "t", "[", "(", "à", "ü", "!", "¡", "f", "W", "k", "r", "U", "J", "·", "Z", "F", "C", "º", "I", "@", "p", "j"} Else Characters = _ "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª¡¿·¬`´¨€".ToCharArray ' Removed chars for better improvement in code encryptation: = & + - ^ " % ' < > ( ) { } . $ [ ] ; @ ! ? ~ : / \ | * # , _ Replacements = _ {"u", "Ñ", "T", "m", "`", "P", "Ç", "Z", "h", "x", "á", "3", "¬", "R", "ª", "6", "ò", "N", "ë", "Ì", "g", "ö", "I", "L", "a", "À", "·", "V", "5", "Ë", "Ù", "´", "Ö", "J", "à", "¡", "n", "4", "È", "j", "ç", "b", "c", "y", "E", "ù", "Ó", "f", "º", "Q", "q", "G", "e", "B", "0", "€", "9", "o", "ì", "O", "8", "¿", "r", "v", "ó", "2", "Ï", "1", "¨", "i", "Á", "D", "t", "Í", "k", "Ú", "C", "ñ", "Ä", "S", "A", "é", "7", "Ü", "K", "z", "í", "è", "Y", "ü", "F", "s", "p", "X", "U", "Ò", "l", "É", "ú", "d", "ï", "M", "W", "H", "ä", "w"} ' a, b, c, d, e, f, g, h, i, j, k, l, m, n, ñ, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, Ñ, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, á, é, í, ó, ú, Á, É, Í, Ó, Ú, à, è, ì, ò, ù, À, È, Ì, Ò, Ù, ä, ë, ï, ö, ü, Ä, Ë, Ï, Ö, Ü, ç, Ç, º, ª, ¡, ¿, ·, ¬, `, ´, ¨, € End If For Each character As Char In str For x As Int32 = 0 To Characters.Length - 1 If character = Characters(x) Then Replacement_Found = True Temp_String &= Replacements(x) Exit For End If Next If Not Replacement_Found Then Temp_String &= character Else Replacement_Found = False Application.DoEvents() Next Return Temp_String End Function Public Shared Function Decrypt_Text(ByVal str As String, _ Optional ByVal Include_Special_Characters As Boolean = False) As String Dim Temp_String As String = String.Empty Dim Replacement_Found As Boolean = False Static Characters As Char() Static Replacements As Char() If Include_Special_Characters Then Characters = {"h", "ó", "Ó", "3", "Á", "è", "A", "^", "ö", "~", "O", "Í", "€", "q", "ú", "À", "Ç", "È", ",", "ì", "i", "ï", "ò", "c", "0", "ñ", "4", "l", "Ü", "ª", "¬", "S", "&", "?", "<", ":", "T", "*", "e", ".", "R", "É", "D", "7", "9", "Ú", "n", "¿", "L", "m", "¨", "Ë", "]", "Ä", "Q", "w", "V", "'", "G", "K", "é", "v", "ù", "}", "P", "E", "X", "+", "í", "´", "$", "{", "_", "Ñ", "u", "ë", "H", "g", "d", "x", "8", "/", "ä", "#", "|", "-", "1", "M", "Ò", "o", ")", "N", "Y", "á", "Ù", "Ì", "%", "ç", """", "a", "=", "Ï", "z", "Ö", ">", ";", "2", "6", "B", "y", "b", "`", "s", "5", "t", "[", "(", "à", "ü", "!", "¡", "f", "W", "k", "r", "U", "J", "·", "Z", "F", "C", "º", "I", "@", "p", "j"} Replacements = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª<>¡!¿?()[]{}/\|·.:;,-+=_~¬^'`´¨*$%&€#@""".ToCharArray Else Characters = _ {"u", "Ñ", "T", "m", "`", "P", "Ç", "Z", "h", "x", "á", "3", "¬", "R", "ª", "6", "ò", "N", "ë", "Ì", "g", "ö", "I", "L", "a", "À", "·", "V", "5", "Ë", "Ù", "´", "Ö", "J", "à", "¡", "n", "4", "È", "j", "ç", "b", "c", "y", "E", "ù", "Ó", "f", "º", "Q", "q", "G", "e", "B", "0", "€", "9", "o", "ì", "O", "8", "¿", "r", "v", "ó", "2", "Ï", "1", "¨", "i", "Á", "D", "t", "Í", "k", "Ú", "C", "ñ", "Ä", "S", "A", "é", "7", "Ü", "K", "z", "í", "è", "Y", "ü", "F", "s", "p", "X", "U", "Ò", "l", "É", "ú", "d", "ï", "M", "W", "H", "ä", "w"} ' a, b, c, d, e, f, g, h, i, j, k, l, m, n, ñ, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, Ñ, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, á, é, í, ó, ú, Á, É, Í, Ó, Ú, à, è, ì, ò, ù, À, È, Ì, Ò, Ù, ä, ë, ï, ö, ü, Ä, Ë, Ï, Ö, Ü, ç, Ç, º, ª, ¡, ¿, ·, ¬, `, ´, ¨, € Replacements = _ "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª¡¿·¬`´¨€".ToCharArray ' Removed chars for better improvement in code encryptation: = & + - ^ " % ' < > ( ) { } . $ [ ] ; @ ! ? ~ : / \ | * # , _ End If For Each character As Char In str For x As Int32 = 0 To Characters.Length - 1 If character = Characters(x) Then Replacement_Found = True Temp_String &= Replacements(x) Exit For End If Next If Not Replacement_Found Then Temp_String &= character Else Replacement_Found = False Application.DoEvents() Next Return Temp_String End Function #End Region
|
|
|
8883
|
Programación / Programación General / Re: ¿Como escapar un CDATA en un XML?
|
en: 9 Junio 2013, 14:05 pm
|
Ya lo pude solucionar (bueno, más bien me lo solucionaron): <?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <SnippetTypes> <SnippetType>Expansion</SnippetType> </SnippetTypes> <Title> Regex match htm html </Title> <Author>Elektro H@cker</Author> <Description> Expresión regular para encontrar urls.htm </Description> <HelpUrl> </HelpUrl> <Shortcut> </Shortcut> </Header> <Snippet> <Declarations> <Literal Editable="true"> <ID>aaaaaaaaa</ID> <ToolTip>sfsdf</ToolTip> <Default> </Default> <Function>sdfsdf</Function> </Literal> <Literal Editable="false"> <ID>cdataend</ID> <ToolTip>Part of the CDATA end tag.</ToolTip> <Default>></Default> </Literal> </Declarations> <Code Language="vb"><![CDATA[ #Region " RegEx Match htm-html " ' [ RegEx Match htm-html Function ] ' ' // By Elektro H@cker ' ' Examples : ' Dim str As String = <a><![CDATA[href="http://www.mp3crank.com/the-rolling-stones/deluxe-edition.htm"]]$cdataend$</a>.Value ' MsgBox(RegEx_Match_htm_html(str)) ' Result: http://www.mp3crank.com/the-rolling-stones/deluxe-edition.htm Private Function RegEx_Match_htm_html(ByVal str As String, Optional ByVal Group As Int32 = 0) As String ' Match criteria: ' ' http://text.htm ' http://text.html ' https://text.htm ' https://text.html ' www.text.htm ' www.text.html Dim RegEx As New System.Text.RegularExpressions.Regex( _ <a><![CDATA[(http://|https://|www).*\.html?]]$cdataend$</a>.Value) Return RegEx.Match(Str).Groups(Group).ToString End Function #End Region ]]></Code> </Snippet> </CodeSnippet> </CodeSnippets>
Saludos
|
|
|
8884
|
Programación / Programación General / [Resuelto] ¿Como escapar un CDATA en un XML?
|
en: 9 Junio 2013, 12:04 pm
|
Necesito ayuda con este xml para escapar el CDATA de la variable del RegEx (No quiero usar comillas dobles porque en otros códigos no puedo hacerlo), no sé nada de XML y estoy perdido, muy perdido, no sé si esto tiene solución, ¿Que puedo hacer?: <?xml version="1.0" encoding="utf-8"?> <CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet"> <CodeSnippet Format="1.0.0"> <Header> <SnippetTypes> <SnippetType>Expansion</SnippetType> </SnippetTypes> <Title> Regex match htm html </Title> <Author>Elektro H@cker</Author> <Description> Expresión regular para encontrar urls.htm </Description> <HelpUrl> </HelpUrl> <Shortcut> </Shortcut> </Header> <Snippet> <Declarations> <Literal Editable="true"> <ID>aaaaaaaaa</ID> <ToolTip>sfsdf</ToolTip> <Default> </Default> <Function>sdfsdf</Function> </Literal> </Declarations> <Code Language="vb"><![CDATA[ Dim RegEx As New System.Text.RegularExpressions.Regex( _ <a><![CDATA[(http://|https://|www).*\.html?]]></a>.Value) ]]></Code> </Snippet> </CodeSnippet> </CodeSnippets>
Según esto al final del comentario a mi no me ha quedado muy claro si hay algún "trick" para mezclar los CDATA y que funcione :S : http://stackoverflow.com/questions/223652/is-there-a-way-to-escape-a-cdata-end-token-in-xml...¿Alguna ayuda?
|
|
|
8885
|
Seguridad Informática / Hacking / Re: Instalar un programa previamente configurado
|
en: 9 Junio 2013, 09:59 am
|
Hola Lo primero, no hagas duplicados, porfavor. Tu pregunta no tiene nada que ver con Batch, sinó con el instalador. Hay varios tipos de instaladores, al igual que varios tipos de móviles y varios tipos de sistemas operativos, debes informarte con cual InstallBuilder ha sido creado ese installer, y luego buscar sus opciones desatendidas ( Silent switches). EDITO:Además, en caso de ser un WindowsInstaller ( MSI), se pueden programar de muchas maneras, se puede nombrar cada opción (paquete) como al programador del instalador le haya dado la gana nombrarlos, solo vas a saber como se llaman buscando en Google para visitar la documentación de soporte del fabricante, y leer, o usando el editor de MSI Orca para saber los nombres de los atributos y las "opciones" de ese installer, reálmente lo que estás pidiendo es lo mismo que pedir que te lea el futuro un adivino, porque es imposible saberlo sin que des los datos necesarios. Si se trata de un MSI y es un instalador de algún programa conocido, segúramente la información que necesites ya está por los rincones de Google. ...El archivo bat sería algo así: @Echo off Instalador-InnoSetup.exe /silent Instalador-WindowsInstaller.msi /qn /norestart INSTALLDIR="C:\Ruta" ADDLOCAL=Nombre-de-paquete-a-instalar Pause&Exit Saludos.
Por poner un ejemplo, que al instalar un Office se instale el word pero no el excel. Poder, se puede, pero Batch no es la manera ni te va a ayudar en nada para realizar esa tarea. Los productos de Microsoft son los más dificiles a la hora de instalarlos de forma desatendida, pues tienen un sin fin de componentes para instalar, son dificiles en el sentido de que hay que saber o entenderse con el lenguaje XML, y que primero hay que informarse sobre los parámetros de ese instalador en específico, y configurarlo, porque para hacer una instalación desatendida de un producto de Microsoft se requiere crear un archivo de configuración escrito en XML, de esta manera: http://technet.microsoft.com/en-us/library/dd630736.aspxPero tienes la suerte de que para Office existe la aplicación "OCT" que te lo hará todo el trabajo que he comentado casi de forma automática y sin esfuerzo: http://technet.microsoft.com/en-us/library/cc179097.aspxSaludos.
|
|
|
8886
|
Programación / .NET (C#, VB.NET, ASP) / Re: Una pregunta sobre IO.Directory.GetFiles
|
en: 9 Junio 2013, 09:07 am
|
A pesar de la bonita Class de _katze_ (por cierto, gracias), y después de mucho buscar la manera más óptima ...al final me quedo con esta función: Private Function Get_Files(ByVal Path As String, ParamArray exts() As String) As List(Of IO.FileInfo) Return New IO.DirectoryInfo(Path).GetFiles.Where(Function(o) exts.Contains(o.Extension)).ToList End Function
For Each file In Get_Files ("C:\Windows", {".dll", ".ini"}) : MsgBox(file. Name) : Next
Más sencillo y eficaz creo que sería imposible! Lo malo es que no se me ocurre como hacer para que la función me permita buscar de manera recursiva, me gustaría poder implementar la recursividad en esa función, preservando su maravillosa sencillez, elegancia y eficacia, es decir...que no quiero llenar la función de Fors para hacer largos recorridos en los subdirectorios estropeando la performance de la función. ¿Alguien tiene idea de que modificaciones necesita la función para hacerla recursiva?
|
|
|
8887
|
Programación / .NET (C#, VB.NET, ASP) / Re: Problema en Visual Basic -Net (Al remplazar una palabra)
|
en: 9 Junio 2013, 07:30 am
|
@ XResh La verdad es que no quería comentar nada acerca de "Mid" para no molestarte y para no desviar el tema, pero me he fijado en tu insistencia sobre la función Mid y lo cierto es que no me gusta ver que se promueva el uso de Mid cuando estamos en .NET, Lo digo porque "Mid" al igual que "left" "right" son funciones de VisualBasic 6 (usables en .NET), ...¿pero para que usarlas si tenemos clases y métodos de todo tipo que son obviamente mucho más rápidos y eficaces que los de VB6? Un saludo!
@ AkiseSe puede apreciar cláramente que en tu código quieres definir tus própios caracteres cifrados (O al menos eso ha dado a entender), de ahí mi código algo largo, pero si prefieres algo reálmente corto puedes usar esto: #Region " Encrypt-Decrypt String " ' [ Encrypt-Decrypt String Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Encrypt_Decrypt_String("Test")) ' Result: «šŒ‹ ' MsgBox(Encrypt_Decrypt_String("«šŒ‹")) ' Result: Hello Public Function Encrypt_Decrypt_String(ByVal Input As String) As String Dim Output As String = String.Empty For Each Ch As Char In Input Output &= Asc(Ch) ' Application.DoEvents() Next Return Output End Function #End Region
EDITO:Si prefieres la versión larga donde puedes definir perféctamente los caracteres que tu quieras, aquí tienes: #Region " Encrypt-Decrypt Text " ' [ Encrypt-Decrypt Text Function ] ' ' // By Elektro H@cker ' ' Examples : ' ' MsgBox(Encrypt_Text("Hello world")) ' Result: à`336 L6ë3m ' MsgBox(Decrypt_Text("à`336 L6ë3m")) ' Result: Hello world ' MsgBox(Encrypt_Text("¡ Hello world !", True)) ' Result: = <ÁÍÍÀ cÀ,Í3 Ï ' MsgBox(Decrypt_Text("= <ÁÍÍÀ cÀ,Í3 Ï", True)) ' Result: ¡ Hello world ! Public Shared Function Encrypt_Text(ByVal str As String, _ Optional ByVal Include_Special_Characters As Boolean = False) As String Static Characters As Char() Static Replacements As Char() If Include_Special_Characters Then Characters = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª<>¡!¿?()[]{}/\|·.:;,-+=_~¬^'`´¨*$%&€#@""".ToCharArray Replacements = {"h", "ó", "Ó", "3", "Á", "è", "A", "^", "ö", "~", "O", "Í", "€", "q", "ú", "À", "Ç", "È", ",", "ì", "i", "ï", "ò", "c", "0", "ñ", "4", "l", "Ü", "ª", "¬", "S", "&", "?", "<", ":", "T", "*", "e", ".", "R", "É", "D", "7", "9", "Ú", "n", "¿", "L", "m", "¨", "Ë", "]", "Ä", "Q", "w", "V", "'", "G", "K", "é", "v", "ù", "}", "P", "E", "X", "+", "í", "´", "$", "{", "_", "Ñ", "u", "ë", "H", "g", "d", "x", "8", "/", "ä", "#", "|", "-", "1", "M", "Ò", "o", ")", "N", "Y", "á", "Ù", "Ì", "%", "ç", """", "a", "=", "Ï", "z", "Ö", ">", ";", "2", "6", "B", "y", "b", "`", "s", "5", "t", "[", "(", "à", "ü", "!", "¡", "f", "W", "k", "r", "U", "J", "·", "Z", "F", "C", "º", "I", "@", "p", "j"} Else Characters = _ "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª¡¿·¬`´¨€".ToCharArray ' Removed chars for better improvement in code encryptation: = & + - ^ " % ' < > ( ) { } . $ [ ] ; @ ! ? ~ : / \ | * # , _ Replacements = _ {"u", "Ñ", "T", "m", "`", "P", "Ç", "Z", "h", "x", "á", "3", "¬", "R", "ª", "6", "ò", "N", "ë", "Ì", "g", "ö", "I", "L", "a", "À", "·", "V", "5", "Ë", "Ù", "´", "Ö", "J", "à", "¡", "n", "4", "È", "j", "ç", "b", "c", "y", "E", "ù", "Ó", "f", "º", "Q", "q", "G", "e", "B", "0", "€", "9", "o", "ì", "O", "8", "¿", "r", "v", "ó", "2", "Ï", "1", "¨", "i", "Á", "D", "t", "Í", "k", "Ú", "C", "ñ", "Ä", "S", "A", "é", "7", "Ü", "K", "z", "í", "è", "Y", "ü", "F", "s", "p", "X", "U", "Ò", "l", "É", "ú", "d", "ï", "M", "W", "H", "ä", "w"} ' a, b, c, d, e, f, g, h, i, j, k, l, m, n, ñ, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, Ñ, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, á, é, í, ó, ú, Á, É, Í, Ó, Ú, à, è, ì, ò, ù, À, È, Ì, Ò, Ù, ä, ë, ï, ö, ü, Ä, Ë, Ï, Ö, Ü, ç, Ç, º, ª, ¡, ¿, ·, ¬, `, ´, ¨, € End If Dim Temp_String As String = String.Empty Dim Replacement_Found As Boolean = False For Each character As Char In str For x As Int32 = 0 To Characters.Length - 1 If character = Characters(x) Then Replacement_Found = True Temp_String &= Replacements(x) Exit For End If Next If Not Replacement_Found Then Temp_String &= character Else Replacement_Found = False Application.DoEvents() Next Return Temp_String End Function Public Shared Function Decrypt_Text(ByVal str As String, _ Optional ByVal Include_Special_Characters As Boolean = False) As String Static Characters As Char() Static Replacements As Char() If Include_Special_Characters Then Characters = {"h", "ó", "Ó", "3", "Á", "è", "A", "^", "ö", "~", "O", "Í", "€", "q", "ú", "À", "Ç", "È", ",", "ì", "i", "ï", "ò", "c", "0", "ñ", "4", "l", "Ü", "ª", "¬", "S", "&", "?", "<", ":", "T", "*", "e", ".", "R", "É", "D", "7", "9", "Ú", "n", "¿", "L", "m", "¨", "Ë", "]", "Ä", "Q", "w", "V", "'", "G", "K", "é", "v", "ù", "}", "P", "E", "X", "+", "í", "´", "$", "{", "_", "Ñ", "u", "ë", "H", "g", "d", "x", "8", "/", "ä", "#", "|", "-", "1", "M", "Ò", "o", ")", "N", "Y", "á", "Ù", "Ì", "%", "ç", """", "a", "=", "Ï", "z", "Ö", ">", ";", "2", "6", "B", "y", "b", "`", "s", "5", "t", "[", "(", "à", "ü", "!", "¡", "f", "W", "k", "r", "U", "J", "·", "Z", "F", "C", "º", "I", "@", "p", "j"} Replacements = "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª<>¡!¿?()[]{}/\|·.:;,-+=_~¬^'`´¨*$%&€#@""".ToCharArray Else Characters = _ {"u", "Ñ", "T", "m", "`", "P", "Ç", "Z", "h", "x", "á", "3", "¬", "R", "ª", "6", "ò", "N", "ë", "Ì", "g", "ö", "I", "L", "a", "À", "·", "V", "5", "Ë", "Ù", "´", "Ö", "J", "à", "¡", "n", "4", "È", "j", "ç", "b", "c", "y", "E", "ù", "Ó", "f", "º", "Q", "q", "G", "e", "B", "0", "€", "9", "o", "ì", "O", "8", "¿", "r", "v", "ó", "2", "Ï", "1", "¨", "i", "Á", "D", "t", "Í", "k", "Ú", "C", "ñ", "Ä", "S", "A", "é", "7", "Ü", "K", "z", "í", "è", "Y", "ü", "F", "s", "p", "X", "U", "Ò", "l", "É", "ú", "d", "ï", "M", "W", "H", "ä", "w"} ' a, b, c, d, e, f, g, h, i, j, k, l, m, n, ñ, o, p, q, r, s, t, u, v, w, x, y, z, A, B, C, D, E, F, G, H, I, J, K, L, M, N, Ñ, O, P, Q, R, S, T, U, V, W, X, Y, Z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, á, é, í, ó, ú, Á, É, Í, Ó, Ú, à, è, ì, ò, ù, À, È, Ì, Ò, Ù, ä, ë, ï, ö, ü, Ä, Ë, Ï, Ö, Ü, ç, Ç, º, ª, ¡, ¿, ·, ¬, `, ´, ¨, € Replacements = _ "abcdefghijklmnñopqrstuvwxyzABCDEFGHIJKLMNÑOPQRSTUVWXYZ0123456789áéíóúÁÉÍÓÚàèìòùÀÈÌÒÙäëïöüÄËÏÖÜçǺª¡¿·¬`´¨€".ToCharArray ' Removed chars for better improvement in code encryptation: = & + - ^ " % ' < > ( ) { } . $ [ ] ; @ ! ? ~ : / \ | * # , _ End If Dim Temp_String As String = String.Empty Dim Replacement_Found As Boolean = False For Each character As Char In str For x As Int32 = 0 To Characters.Length - 1 If character = Characters(x) Then Replacement_Found = True Temp_String &= Replacements(x) Exit For End If Next If Not Replacement_Found Then Temp_String &= character Else Replacement_Found = False Application.DoEvents() Next Return Temp_String End Function #End Region
Saludos!
|
|
|
8888
|
Programación / .NET (C#, VB.NET, ASP) / Re: Problema en Visual Basic -Net (Al remplazar una palabra)
|
en: 9 Junio 2013, 03:40 am
|
No creo que haga falta nada más que añadir a lo que te dijo Novlucker, hay miles de ejemplos en Google de como crear un Loop, ¿Has intentado buscar? Te hago un ejemplo de lo que te están diciendo que hagas: Public Class Form1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load MsgBox(Encrypt_text("¡ Hello world !")) ' Result: @i Hello world @o End Sub Public Shared Function Encrypt_text(ByVal str As String) As String Static Special_Characters As Char() = ":;-()¿?¡!@€$/".ToCharArray Static Special_Characters_Replacement() As String = _ {"@q", "@w", "@e", "@r", "@t", "@y", "@u", "@i", "@o", "@p", "@a", "@s", "@d"} ' : , ; , - , ( , ) , ¿ , ? , ¡ , ! , @ , € , $ , / Dim Temp_String As String = String.Empty Dim Replacement_Found As Boolean = False For Each character As Char In str ' Recorremos cada caracter de la variable str For x As Int32 = 0 To Special_Characters.Length - 1 ' recorremos cada caracter de nuestro array de caracteres If character = Special_Characters(x) Then ' si caracter de STR es igual a caracter de ARRAY... Replacement_Found = True Temp_String &= Special_Characters_Replacement(x) Exit For ' Salimos de la iteración para ahorrar tiempo End If Next If Not Replacement_Found Then Temp_String &= character Else Replacement_Found = False Next Return Temp_String End Function End Class
Saludos
|
|
|
8890
|
Programación / .NET (C#, VB.NET, ASP) / Re: ¿Cómo encontrar una cadena dentro de un párrafo de texto?
|
en: 8 Junio 2013, 08:36 am
|
Intenté entenderlo pero se me complicó, no sé muy bien de ese lenguaje y sé más de C++ en Windows Forms. Si pudieras ponerlo en el lenguaje que te menciono te lo agradecería.
Dim regex As String = <a><![CDATA[(http://|https://|www)([\w+?\.\w+])+([a-zA-Z0-9\~\!\@\#\$\%\^\&\*\(\)_\-\=\+\\\/\?\.\:\;\'\,]*)?]]></a>.Value
No, no sé C/C++/C#, Copia ese RegEx, conviértelo a la sintaxis adecuada de C++ usando la aplicación "RegExBuddy", y ya tienes la primera parte del problema solucionada, el resto solo sería que aprendieses a usar las expresiones regulares en C++ (si no supieras). Saludos
|
|
|
|
|
|
|