none
Reemplazar comillas simples con replace

    Pregunta

  • Hola a todos:

    Estoy intentando reemplazar el contenido de una variable string, que lleva el siguiente resultado: "'001'","'002'" y poner su resultado en otras variables de la siguiente forma:

    variable1= 001

    variable2 = 002

    con el fin de que me pueda leer dichos valores unos parámetros que tengo en una sql y cuya longitud es de 3.

    Je utilizado Split para la separación de la coma y hasta ahí bien.

    Pero no puedo llegar a sacar las comillas simples con la función replace para que me queden los valores indicados.

                    Dim cadena As String = empresasO
                    Dim empresitas As String() = cadena.Split(","c)
                    empresitas = empresitas.Replace("''", "")  '/// Esto está mal escrito.

    Como tengo que arreglar este tema ?. O puedo hacerlo de otra forma más simple.

    Gracias a todos.

    Gemma


    domingo, 5 de marzo de 2017 15:24

Respuestas

  • gemma_campillo,

    Puedes apoyarte de las expresiones regulares para encontrar todas las apariciones basadas en un patrón, por ejemplo:

    Dim Cadena As String = """ '001'"",""'002'"""
    
    Dim Partes = Regex.Matches(Cadena, "\d+")
    
    MessageBox.Show(String.Format("Parte 1: {0}, Parte 2: {1}", Partes.Item(0), Partes.Item(1)))

    Nota que accedes a cada elemento de la colección a través de la propiedad Item, de hecho lo que obtienes es una colección de apariciones (MatchCollection), por tanto si te viene bien podrías recorrerlo con cualquier iterador.

    No olvides indicar el espacio de nombres: Imports System.Text.RegularExpressions


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    • Marcado como respuesta gemma_campillo domingo, 5 de marzo de 2017 16:02
    domingo, 5 de marzo de 2017 15:47

Todas las respuestas

  • gemma_campillo,

    Puedes apoyarte de las expresiones regulares para encontrar todas las apariciones basadas en un patrón, por ejemplo:

    Dim Cadena As String = """ '001'"",""'002'"""
    
    Dim Partes = Regex.Matches(Cadena, "\d+")
    
    MessageBox.Show(String.Format("Parte 1: {0}, Parte 2: {1}", Partes.Item(0), Partes.Item(1)))

    Nota que accedes a cada elemento de la colección a través de la propiedad Item, de hecho lo que obtienes es una colección de apariciones (MatchCollection), por tanto si te viene bien podrías recorrerlo con cualquier iterador.

    No olvides indicar el espacio de nombres: Imports System.Text.RegularExpressions


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    • Marcado como respuesta gemma_campillo domingo, 5 de marzo de 2017 16:02
    domingo, 5 de marzo de 2017 15:47
  • Hola querido Williams:

    Si, con algo parecido a lo tuyo ya lo he solucionado, estaba aplicando mal una variable. De todas formas como siempre, me apunto tu código que mucho mejor.

    Un abrazo querido amigo.

    Gemma.

    domingo, 5 de marzo de 2017 16:02