¿Qué sucede si quiero dividir una cadena usando un delimitador que es una palabra?
Por ejemplo, This is a sentence
.
Quiero dividir is
y obtener This
y a sentence
.
En Java
, puedo enviar una cadena como delimitador, pero ¿cómo puedo lograr esto C#
?
Puede usar el método Regex.Split , algo como esto:
Editar : esto satisface el ejemplo que diste. Tenga en cuenta que un String.Split ordinario también se dividirá en el " es " al final de la palabra "Esto", por lo tanto, utilicé el método Regex e incluí los límites de las palabras alrededor del " es ". Sin embargo, tenga en cuenta que si acaba de escribir este ejemplo por error, entonces String.Split probablemente será suficiente.
fuente
Según las respuestas existentes en esta publicación, esto simplifica la implementación :)
fuente
EDITAR: El "es" se rellena en ambos lados con espacios en la matriz para preservar el hecho de que solo desea que la palabra "se" elimine de la oración y la palabra "esto" permanezca intacta.
fuente
...En breve:
fuente
Puede usar String.Replace () para reemplazar su cadena dividida deseada con un carácter que no aparece en la cadena y luego usar String.Split en ese carácter para dividir la cadena resultante para el mismo efecto.
fuente
O usa este código; (mismo: nueva cadena [])
fuente
Aquí hay una función de extensión para hacer la división con un separador de cadenas:
Ejemplo de uso:
fuente
fuente
fuente