Reemplazar ciertas palabras en una oración
Estoy desarrollando una aplicación en Android Studio que traduce ciertas palabras que he inventado yo mismo. Tengo la parte en el código que traduce correctamente las palabras, pero sólo funciona cuando escribo la palabra pero no cuando escribo la palabra en una oración. Cuando escribo la oración, no muestra nada cuando presiono el botón. Por ejemplo: Cuando escribo "Cookie", obtengo "Biscuit". Pero cuando escribo "Me amo una cookie", no muestra la oración y la palabra cuando presiono el botón.
Este es mi código hasta ahora:
- Desactivar el selector Android ListView
- Cómo pausar y no pausar el hilo en un juego?
- Android: Google reproduce los servicios de juegos error de conexión (java.lang.IllegalStateException: GoogleApiClient debe estar conectado.)
- Ordenar los valores de Enum. () en orden alfabético y agregarlos a un Spinner ArrayAdapter
- AndEngine - eliminar un Sprite particular y su cuerpo
public class MainActivity extends AppCompatActivity { EditText mType; Button mSearch; TextView mResults; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mType = (EditText) findViewById(R.id.typeWordTxt); mSearch = (Button) findViewById(R.id.find8tn); mResults = (TextView) findViewById(R.id.resultsTxt); mSearch.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (mType.getText().toString().trim().equals("cookie")) { mResults.setText("biscuit"); } } }); } }
- ¿Cómo puedo detectar formas geométricas 2D básicas (por ejemplo, cuadrado, triángulo, círculo) en una imagen JPEG?
- Lectura rápida de enteros pequeños endian de archivo
- Android Turn-by-Turn API?
- ¿Cuál es la mejor manera de comprobar si una cadena contiene una URL en Java / Android?
- Cómo instanciar un oyente por reflexión en Android
- ¿Cómo analizar json array con múltiples objetos por gson?
- Creación de una aplicación de pantalla de bloqueo de Android.
- OkHttp PublicKey pinning en Android
Puedes hacerlo así:
if (mType.getText().toString().toLowerCase().contains("cookie")) { mResults.setText(mType.getText().toString().replaceAll("(?i)cookie", "biscuit")); }
Como @Andreas dijo al comentario de abajo se puede utilizar para reemplazar si es una palabra completa y no para reemplazar una cadena en una palabra.
Es una tarea sencilla que puedes hacer a continuación
String str = "abc"; str.replace("abc", "xyz");
Se reemplazará la palabra con xyz en toda la cadena. Pruébelo y házmelo saber que es esto lo que quieres
Debido a que utiliza iguales, para encontrar la palabra de la oración debe usar el método contains()
y replaceAll()
para reemplazar todas estas palabras