Manejo de String en Java

Para familiarizarnos con el manejo de strings en Java, así como con los métodos de los que disponemos para tratar con ellos, vamos a crear una función censura(String texto, String tabu, int tipo) que comprueba si un texto contiene una subcadena tabú y de ser así tiene tres opciones:

  • Si tipo es 0 devuelve el texto sin la cadena tabú.
  • Si tipo es 1 devuelve el texto con los caracteres correspondientes a la cadena tabú sustituidos por asteriscos, tantos asteriscos como caracteres tenga tabú.
  • Si tipo es cualquier otro valor no hace nada.
En primer lugar definimos la cabecera de la función, que recibe tres variables por parámetro: texto, tabu y tipo. Texto va a contener el texto en el que vamos a comprobar si está la cadena tabu o no, por lo tanto ambas variables serán de tipo String. Tipo contiene el valor que nos va a indicar qué hacer con la cadena, por lo tanto será de tipo int(entero).

String censura(String texto, String tabu, int tipo){

A continuación comprobamos mediante el método contains() si la cadena tabú se encuentra en texto. Este método devuelve True si se encuentre la cadena y False en caso contrario.

if (texto.contains(tabu)) {

Si la cadena tabú está contenido en texto pasamos a averiguar en qué parte del mismo se encuentra, para ello definimos las variables inicio y fin.Inicio contendrá el índice en el que empieza la cadena dentro del texto y fin el índice de la última letra de la cadena tabú.

int inicio = texto.indexOf(tabu); int fin = inicio + tabu.length();

Una vez tenemos delimitada la cadena dentro del texto creamos un StringBuffer, que nos va a servir en caso de que haya que modificar el texto.

StringBuffer aux = new StringBuffer();

A continuación comprobamos el valor de tipo para saber que debemos hacer con el texto, para ello usamos un switch.

switch(tipo) {

En caso de que tipo valga 0 se debe devolver el texto sin la cadena tabú, para ello vamos a concatenar la parte del texto anterior a inicio con la parte posterior a fin, usando el método substring que devuelve la parte de una cadena comprendida entre dos índices.

case 0 : return texto.substring(0,inicio).concat(texto.substring(fin));

Cabe destacar que usamos un único parámetro en el segundo substring puesto que si no se indica se considera que la subcadena irá desde el índice hasta el final de la misma.

En caso de que tipo valga 1 se devuelve el texto con la cadena tabú sustituida por asteriscos, para ello rellenaremos el StringBuffer creado anteriormente con tantos asteriscos como letras contenga la palabra tabú y luego lo reemplazaremos en el texto gracias a la función replace().

case 1 : for (int i = 0; i < tabu.length(); i++)
aux.append('*');
return texto.replace(tabu, aux);

Si tipo toma cualquier otro valor no se hace nada, puesto que se devolverá la cadena de texto tal cual.

default : ;

Finalmente cerramos el switch y el if y devolvemos el texto.

return texto;

El código final queda por lo tanto de la siguiente forma:

String censura(String texto, String tabu, int tipo){

if (texto.contains(tabu))
{
int inicio = texto.indexOf(tabu);
int fin = inicio + tabu.length();
StringBuffer aux = new StringBuffer();
switch(tipo)
{
case 0 : return texto.substring(0,inicio).concat(texto.substring(fin));
case 1 : for (int i = 0; i < tabu.length(); i++) aux.append('*');
return texto.replace(tabu, aux);
default : ;

return texto;



Nombre:

Email:

Comentario:

Aviso legal

Lo más buscado y visitado en Ciberaula

Masters: Master en Programación Web | Master en Diseño Gráfico | 3D Studio Max
Cursos: Curso Online de Excel | Curso Online de Access | Excel Basico | Excel Intermedio | Excel Avanzado | Excel para Big Data | Access Avanzado | Macros Excel | Microsoft Excel Financiero | Programación de Macros Excel con Visual Basic | Curso Online de Prevencion de Riesgos Laborales | Cursos de Prevencion de riesgos laborales | Curso Online de Atencion al Cliente | GNU/Linux | Curso de Java | Cursos de PHP | Curso de HTML | Curso de ASP.NET | Curso normas ISO | 3d Studio Max | 3d Studio Iluminación | 3d Studio Modelado | Curso de Ingles | Excel Online | funciones excel | Curso de Office | Curso Online de Eneagrama | curso online de diseño grafico | cursos de java online | curso de linux | Curso Online de Educación para la Igualdad de Oportunidades | Curso online de Contaplus | curso online de liderazgo |
Secciones: Formacion programada por las empresas | Programacion Orientada a Objetos | Cursos OnLine | Tutorial Linux | Lenguaje Java | Cursos SENCE | Cursos Bonificados | Cursos Online Bonificados | fundacion tripartita cursos | e learning cursos |
| sistema operativo linux | Cursos sence 2016 |
Recomendados: Deontologia | Cursos Gratuitos | Aula Virtual | Etica Profesional | Que es Word | Illustrator online | cursos bonificados 2016 | cursos bonificados para trabajadores |
POO Y Java: POO | J2EE | J2SE | Operadores logicos | Operadores Relacionales | Listas en Java | Abstraccion | Encapsulamiento |



Copyright 2014-2015 - Ciberaula ® - Reservados Todos los Derechos