Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - xeta21

Páginas: [1]
1
Hola :) Tengo el siguiente programa:

Código: [Seleccionar]
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class getTag2Html {

public static void main (String[] args) throws IOException {
String tag = "<p>";

                URL web = new URL("http://www.insalfonscostafreda.cat/web/");
//comprobar que hi hagi dos paràmetres a l'entrada

                System.out.println("Busquem a : "+web + " l'etiqueta p");
// patró de cerca regexp
String pattern = "<" + tag + ".*\\/?>";

//Iniciem la connexió
web.openConnection();

        BufferedReader in = new BufferedReader( new InputStreamReader(web.openStream()));

        File f = new File("eac2.xml");
        BufferedWriter bw;
        bw = new BufferedWriter(new FileWriter(f));
        String inputLine;
        while ((inputLine = in.readLine()) != null) {
           
            if(inputLine.contains(tag)) {
               
                System.out.println(inputLine);
                bw.write(inputLine + "\n");
            }
        }
        bw.close();
        in.close();
}
}


lo que no sé es como usar la parte:

String pattern = "<" + tag + ".*\\/?>";

el programa me funciona perfectamente pero tengo que usar esta parte y no sé como incorporarla..

gracias!

2
ooohh!! ya veo que has substituido los usados por *!!!

Ostras no había pensado en eso!!! gracias!!! gracias!!!!!!!

3
No al código no se le puede añadir nada.

Y si la idea es que cuando un carácter se use y quede gastado.. :(

4
lo malo de tu programa que es que necesito que me compare varias palabras en este caso CAS , DIT.

necesito que esta parte:

    private void proves() {
        char[] diposit = {'a', 'c', 'i','a','v','a','d','s', 'o','t','i'};
        String[] paraules = {"cas", "dit"};
        System.out.println("Son lletresAldiposit (si): ");
        System.out.println(lletresDeParaulesAlDiposit(paraules,  diposit ));

sea así, si o si..

por eso no consigo que me salga el programa.. :(

Aparte debería de poder mostrar al final los caracteres que me quedan sin usar.. :(

8
muchas gracias por tu ayuda César!

Pero tengo dos problemas con tu código!! xD

1- necesito que nunca se repitan las palabras seleccionadas por eso usé el hashset en la otra opción.

2- como quito los null? Siempre busca entre 30 palabras. y rellena hasta que hace los 30 caracteres y el resto los pone como null :S

9
Tengo otro problema más... :( soy una pesada lo se.. T_T

tengo este código:

Código: [Seleccionar]
package obtenirparaulesalatazar;

import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Random;


public class ObtenirParaulesAlAtazar {
   
      public static void main(String[] args) {
      ObtenirParaulesAlAtazar programa = new ObtenirParaulesAlAtazar();
      programa.Diccionari();       
    }
     
      void Diccionari(){
         
          int Totalparaules = Total();
          String[] diccionari = DiccionariFinal();
        //  RandomParaules( diccionari ,  Totalparaules);
          String[] palabrasNuevas = RandomParaules(diccionari , Totalparaules);
          prova (palabrasNuevas);
      }
     
      public String[] DiccionariFinal(){

        System.out.println("Programa que torna paraules al atzar  ")   ; 
 String[] diccionari = {
            "a","abadessa","abandonat","abarnegat","abat","abatussat","abissal","abnegat",
            "abrainat","abruptesa","abscissa","absolut","abstreure","acabar","acampar",
            "accent","acer","acerat","acid","aclamar","aclarir","aclarit","acrata",
            "acrobacia","adagi","adaptar","adeptes","adequar","adequat","adeu","adherir",
            "admetre","adonar","adormir","adscriure","adust","advers","advocat","afanar",
            "afany","afavorir","afavorit","afebleix","afeblit","afectat","afectiu","afectuos",
            "afegir","afer","afilar","afinar","afi","afligir","afligit","aflorar","afluent",
            "afluixar","agafar","agalla","agata","agencia","agrair","agrait","agrari","agre",
            "agregar","agror","aguila","ah","ahir","aigua","aiguat","aire","aixada","aixafar",
            "aixecar","aixeta","aixella","aixi","aixo","aixovar","ajeure","ajornar",
            "ajudar","ajupir","ajustar","ala","albada","albi","ale","alenar",
            "alevi","alga","algid","algu","alie","alla","alli","allo","alma","alpi",
            "altivesa","amagar","amanida","amanir","ambre","amorf","ample","ampliar",
            "anar","anca","angoixa","anis","ansa","apagar","apagat","apercebre",
            "apostata","arbre","aristòcrata","atreure","audiofon","autocrata",
            "baixa","bali","bandol","barata","barbar","barrera","bassal","bata",
            "benveure","benviure","bestraure","bobila","bossarrera","bravata","bufor",
            "(insulto)elobre","cantata","carabassal","carrera",
            "casal","caure","causa","celebre","censal","centaure","cercavila","circumscriure",
            "clamar","clar","cloure","codol","colossal","columnata","comensal","commoure",
            "complaure","concloure","condol","contramarc","contrapès","contreure",
            "convilatà","conviure","corbata","correra","coure","creure","cuixa","culata",
            "data","decaure","de","decebre","deixa","descloure","descriure","desfilar",
            "deslliurat","desviure","detreure","deure","distreure","egagropila","embeure",
            "emfasi","empes","entreploure","entreveure","errata","es","escandol","escarlata",
            "escata","escaure","espes","excloure","extasi","extreure","fe","febre","fetge",
            "fila","fluixa","fragata","frenopata","funebre","gaiata","gebre","glabre",
            "gramofon","heretgia","hipotesi","homofon","horabaixa","i","idol","incloure",
            "inscriure","jeure","licorera","lleure","llibre","lliure","lugubre","magnetofon",
            "malveure","manobre","marbre","membre","microfon","minotaure","moure","nombre",
            "o","olla","onda","onada","or","orca","orfebre","pagar","pagat","paper","paraula",
            "pebre","piga","plaure","plorar","ploure","pobre","postdata","prescriure","preveure",
            "promoure","prorrompre","proscriure","public","pulcre","pupitre","que","queixa","readmetre",
            "recloure","regata","reixa","remoure","retreure","rivetaire","romandre","sabata","sabre",
            "safata","salubre","serenata","sobreviure","sostreure","subscriure","tabac","tabal","tacar",
            "tacat","tacit","tacte","tactica","tactil","talar","tall","talla","tallar","talos",
            "talp","tambe","tampo","tanca","tanc","tapar","tapat","tapia","tarda","tasca",
            "tassa","taula","tauro","taxa","tebia","tecla","telefon","timbre","vaca","vacu",
            "vaga","vago","vall","vampir","vandal","vanova","vapor","vaquer","variar",
            "variat","vector","vedell","vegada","vei","veinal","veinat","vel","velada",
            "veler","vell","vena","vencer","vençut","venda","vendre","venial","venjar",
            "venjat","venosa","vent","ventar","ventre","verb","verd","veri","vers","veto",
            "veu","viure","vorera"
        };
          return diccionari;
             }
       
         public int Total(){
             
             int Totalparaules=30;
          return Totalparaules;
     
         }
             
 public String[] RandomParaules(String[] diccionari , int Totalparaules){
Random random = new Random();
String[] palabrasNuevas = new String[30];
int total = diccionari.length;
int indice = 0;
        HashSet<Integer> indicePalabras = new LinkedHashSet<Integer>();
       
while(indicePalabras.size() != Totalparaules){
int numero = random.nextInt(total);
indicePalabras.add(numero);
}
for (Integer i : indicePalabras){
palabrasNuevas[indice] = diccionari[i];
//System.out.println(palabrasNuevas[indice]);
indice++;
}
          return palabrasNuevas;

         
 } public void prova(String [] palabrasNuevas){
   
        System.out.println() ;
        System.out.println("---------------------------------------------------");
        System.out.println("Resultat es: ");
         System.out.println(Arrays.toString(palabrasNuevas));
        System.out.println("---------------------------------------------------");
        System.out.println();
         }
}

Y me recoge 30 palabras del diccionario de forma aleatoria.. este código estaría perfecto.. pero no tengo que buscar 30 palabras sino X palabras que hagan el total de 30 caracteres....

Por poner un ejemplo:

Hola (4)
Como (4)
Estas (5)
? ( 1 )
Yo (2 )
bien ( 4 )

TOTAL SERIAN 30 caracteres.

Como hago esto con el código adjunto?

10
Hola de nuevo.. T_T

Tengo este código:

Código: [Seleccionar]
package lletresdeparaulesaldiposit;

public class LletresdeParaulesAlDiposit { 
    public static void main(String[] args) {       
        LletresdeParaulesAlDiposit  prg = new LletresdeParaulesAlDiposit ();
        prg.proves();
    }
      private boolean lletresDeParaulesAlDiposit(String[] paraules, char[] diposit) {

      boolean result = false;
for (int i = 0; i < paraules.length; i++){
char[] caracteres = paraules[i].toCharArray();
for(int j = 0; j < caracteres.length; j++){
for(int k = 0; k < diposit.length; k++){
if ( caracteres[j] == diposit[k] ){
System.out.println("SI: " + caracteres[j] + " - " + diposit[k]);
result = true;
} else {
System.out.println("NO: " +  caracteres[j]+ " - " + diposit[k]);
result = false;
}
}
}
System.out.println("-----");
System.out.println();
}
return result;
   
      }
    private void proves() {
        char[] diposit = {'a', 'c', 'i','a','v','a','d','s', 'o','t','i'};
        String[] paraules = {"cas", "dit"};
        System.out.println("Son lletresAldiposit (si): ");
        System.out.println(lletresDeParaulesAlDiposit(paraules,  diposit ));
    }

 
}

Y no me hace la función que esperaba..

Os explico necesito que me verifique si la palabra cas y dit están en el deposito :   char[] diposit = {'a', 'c', 'i','a','v','a','d','s', 'o','t','i'};

si las palabras están en el deposito me de true sino false.

es decir:

Tengo los caracteres:

  char[] diposit = {'a', 'c', 'i','a','v','a','d','s', 'o','t','i'};

Si escribo  Hola que tal  ( DARA FALSE ya que no está la H, L, Q,U,E, L )

Si escribo cava  ( dara true ya que están los caracteres )

El problema es que si escribo por ejemplo cavav tendría que dar error ya que solo hay una V en el deposito no 2.

Por eso no sé como hacerlo.. Podéis ayudarme? :(

11
Hola necesito ayuda! :(

Tengo el siguiente código:

Código: [Seleccionar]
package actualizarlletres;

public class ActualizarLletres {
       
        public static void main(String[] args) {
      ActualizarLletres programa = new ActualizarLletres();
        programa.inici();
    }

         void inici(){
        presentarAplicacio();
        arrayLletres();
          String[] nombres = arrayLletres();
          char[]diposit  = Diposit();
        ActualizarLletres(nombres, diposit);
       
         }
         void presentarAplicacio(){
        System.out.println("Aquest programa esborrara lletres");
     System.out.println("_____________________________________________");
          }
         
         String[] arrayLletres(){
         String[] nombres ={ "ABADESSA","IDOL","PlORAR","INCLOURE","BATA" };     
         return nombres;
          }
        char[] Diposit (){
        char[] diposit = {'R', 'C', 'A', 'O', 'O', 'S', 'A', 'S', 'P', 'D',
                          'L', 'A', 'D', 'A', 'N', 'U', 'L', 'O', 'B', 'I',
                          'E', 'I', 'R', 'E', 'T', 'L', 'R', 'A', 'B', 'A'};
        return diposit;
        }
     
           boolean   ActualizarLletres(String[] nombres, char[] diposit){
            // ESCOGEMOS 2 PALABRAS
                String[] paraules ={ "ABADESSA","IDOL"};
               boolean result = false;
for (int i = 0; i < paraules.length; i++){
char[] caracteres = paraules[i].toCharArray();
for(int j = 0; j < caracteres.length; j++){
for(int k = 0; k < diposit.length; k++){
if (diposit[k] == caracteres[j]){
System.out.println("SI: " + diposit[k] + " - " + caracteres[j]);
result = true;
} else {
System.out.println("NO: " + diposit[k] + " - " + caracteres[j]);
result = false;
}
}
}
System.out.println("-----");
System.out.println();
}
return result;
         
}
}


   
Me hace el recorrido y me verifica si cada palabra esta en el deposito.. Pero necesito que el deposito en vez de salir así:

  char[] diposit = {'R', 'C', 'A', 'O', 'O', 'S', 'A', 'S', 'P', 'D',
                          'L', 'A', 'D', 'A', 'N', 'U', 'L', 'O', 'B', 'I',
                          'E', 'I', 'R', 'E', 'T', 'L', 'R', 'A', 'B', 'A'};

Cuando he escogido 2 palabras como Abadessa y Idol (paraules )

salga el deposito así:

  char[] diposit = {'R', 'C', '-','-', 'O', '-', '-', '-', 'P', '-',
                          'L', '-', '-', 'A', 'N', 'U', 'L', 'O', '-', '-',
                          '-', 'I', 'R', 'E', 'T', '-', 'R', 'A', 'B', 'A'};

Es decir los caracteres de las palabras Abadessa  y Idol salgan tachados en el deposito.

como lo hago=?

Páginas: [1]

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".