Cortar una cadena

  • bayes
  • Newbie
  • Newbie
  • No Avatar
  • Registrado: Feb 13, 2004
  • Mensajes: 7
  • Status: Offline

Nota Febrero 14th, 2004, 1:24 pm

Una cosa muy simple de hacer realmente, pero Im no obtener los resultados que necesito.

Ive acaba de hacer un poquito de código para dividir una cadena, utilizando una "," como delimitador - único problema es que el String.split () en flash sólo parece volver una serie de bits en lugar de lo específico que querer.

Por ejemplo:

Código: [ Select ]
function splitHas(){
    for (splitCount=1;splitCount<5;splitCount++){
        my_str = parseArray[2].has;
        split1 = my_str.split(",",1);
        split2 = my_str.split(",",2);
        split3 = my_str.split(",",3);
        split4 = my_str.split(",",4);
    }
}
  1. function splitHas(){
  2.     for (splitCount=1;splitCount<5;splitCount++){
  3.         my_str = parseArray[2].has;
  4.         split1 = my_str.split(",",1);
  5.         split2 = my_str.split(",",2);
  6.         split3 = my_str.split(",",3);
  7.         split4 = my_str.split(",",4);
  8.     }
  9. }


El uso de este:

Código: [ Select ]
scaly_skin,mouth,cold_blood

Me da:

Código: [ Select ]
scaly_skin
scaly_skin,mouth
scaly_skin,mouth,cold_blood
  1. scaly_skin
  2. scaly_skin,mouth
  3. scaly_skin,mouth,cold_blood


Quiero ser capaz de despojar a la sección específica, por ejemplo - la 2 ª sección (la boca) y el palillo justo que en una variable. ¿Es eso posible con la String.split () o debo utilizar otra cosa?
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Febrero 14th, 2004, 1:24 pm

  • stinger
  • Graduate
  • Graduate
  • No Avatar
  • Registrado: Ene 22, 2004
  • Mensajes: 157
  • Loc: San Jose, CA
  • Status: Offline

Nota Febrero 19th, 2004, 1:52 am

Hola,

Parece que lo que está haciendo es correcto. Sólo falta una variable pequeña.

Código: [ Select ]
function splitHas(){
  for (splitCount=1;splitCount<5;splitCount++){
   my_str = parseArray[2].has;
   split1 = my_str.split(",",1);
   split2 = my_str.split(",",2);
   split3 = my_str.split(",",3);
   split4 = my_str.split(",",4);
  }
}
  1. function splitHas(){
  2.   for (splitCount=1;splitCount<5;splitCount++){
  3.    my_str = parseArray[2].has;
  4.    split1 = my_str.split(",",1);
  5.    split2 = my_str.split(",",2);
  6.    split3 = my_str.split(",",3);
  7.    split4 = my_str.split(",",4);
  8.   }
  9. }


debe ser la función
Código: [ Select ]
splitHas(passedVar){

my_str = passedVar.split(",");
   split1 = my_str[0];
   split2 = my_str[1];
   split3 = my_str[2];
   split4 = my_str[3];
  }
}
  1. splitHas(passedVar){
  2. my_str = passedVar.split(",");
  3.    split1 = my_str[0];
  4.    split2 = my_str[1];
  5.    split3 = my_str[2];
  6.    split4 = my_str[3];
  7.   }
  8. }


He cambiado la variable de modo que usted puede utilizar esta función varias veces, con sólo enviar una nueva variable en la función llamada. Es posible que desee enviar 2 variables, siendo 1 lo que hay división, y el otro es la nueva matriz que se creará.
  • UNFLUX
  • Genius
  • Genius
  • Avatar de Usuario
  • Registrado: Dic 20, 2002
  • Mensajes: 6382
  • Loc: twitter.com/unflux
  • Status: Offline

Nota Febrero 20th, 2004, 1:24 pm

¿chicos por favor use el código de etiqueta al publicar? gracias. :)
UNFLUX.FOTO
  • lostinbeta
  • Guru
  • Guru
  • Avatar de Usuario
  • Registrado: Jun 26, 2003
  • Mensajes: 1402
  • Loc: Philadelphia, PA
  • Status: Offline

Nota Febrero 20th, 2004, 2:54 pm

String.split () toma un valor de cadena se divide una cadena en el delimitador es y cada uno de esos temas se convierte en un elemento de una matriz. A continuación, puede elegir la posición de matriz correcta para la palabra que desee.

Por ejemplo...
Código: [ Select ]
myString = "scaly_skin,mouth,cold_blood";
splitString = myString.split(",");
trace(splitString[0]);//returns scaly_skin
trace(splitString[1]);//returns mouth
trace(splitString[2]);//returns cold_blooded
  1. myString = "scaly_skin,mouth,cold_blood";
  2. splitString = myString.split(",");
  3. trace(splitString[0]);//returns scaly_skin
  4. trace(splitString[1]);//returns mouth
  5. trace(splitString[2]);//returns cold_blooded


¿Es esto lo que estamos tratando de hacer?
  • Ami
  • Newbie
  • Newbie
  • No Avatar
  • Registrado: Jul 02, 2004
  • Mensajes: 6
  • Loc: Malaysia
  • Status: Offline

Nota Julio 2nd, 2004, 8:04 pm

Bayes, creo que me wat hacer es ligeramente algunas mismo con u, sólo quiero pedir es que u utilizar el archivo txt externo para la matriz?

chicos, me ayuda a ver a mi código. im usando un archivo txt externo para mantener mi matriz.
Código: [ Select ]
sola=5x+67x-3&solb=2x=9&solc=x=4.5

n at the button's action i put this :
  1. sola=5x+67x-3&solb=2x=9&solc=x=4.5
  2. n at the button's action i put this :


on (release) (
LoadVars loadText = new ();
(loadText.load "dataold.txt");
loadText.onLoad = function () (
sola.text = this.sola;
= solb.text this.solb;
solc.text = esto. solc;
);
)

la sola, solb, solc es un nombre de texto dinámico en flash.

a partir del código que me da toda la respuesta juntos. pero yo quiero Wat es la respuesta sale 1 de 1 después de hacer clic en el botón.

por primera vez, haga clic en el botón de salir 5x 67 x-3, haga clic por segunda vez el mismo botón salir 2x = 9 n, por último salir x = 4.5.

Entonces, ¿cómo im va a dividir la matriz para mostrar la respuesta 1 de 1??

please ayuda...
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13458
  • Loc: Florida
  • Status: Offline

Nota Julio 2nd, 2004, 9:37 pm

Bayes,
Puesto Lostinbetas debe bastante resumir :P Me gustaría ampliar gif "alt =": D "title =" muy feliz "/>

Utilizando un prototipo podría darle una búsqueda en la sección de cuerda como tal,
Código: [ Select ]
String.prototype.getSectionByDelimiter = function(section,delimiter) {
    var tmp = this.split(delimiter);
    return tmp[section];
}
  1. String.prototype.getSectionByDelimiter = function(section,delimiter) {
  2.     var tmp = this.split(delimiter);
  3.     return tmp[section];
  4. }


utilizado como tal,

Código: [ Select ]
myStr = "a,b,c,d,e";
varToFill = myStr.getSectionByDelimiter(2,",");

trace(varToFill); // returns c
  1. myStr = "a,b,c,d,e";
  2. varToFill = myStr.getSectionByDelimiter(2,",");
  3. trace(varToFill); // returns c


Edit: Acabo de notar la edad de este tema :P
Strong with this one, the sudo is.
  • lostinbeta
  • Guru
  • Guru
  • Avatar de Usuario
  • Registrado: Jun 26, 2003
  • Mensajes: 1402
  • Loc: Philadelphia, PA
  • Status: Offline

Nota Julio 3rd, 2004, 8:37 am

Usted puede cargar en sus valores como este...

Código: [ Select ]
loadText = new LoadVars();
loadText.onLoad = function() {
    equations = [this.sola, this.solb, this.solc];
    sola.text = equations[0];
};
loadText.load("dataold.txt");
  1. loadText = new LoadVars();
  2. loadText.onLoad = function() {
  3.     equations = [this.sola, this.solb, this.solc];
  4.     sola.text = equations[0];
  5. };
  6. loadText.load("dataold.txt");


Que se carga en un arreglo por defecto y mostrar la primera en el cuadro de texto en primer lugar.

El resto es sólo incrementar el valor de posición matriz para mostrar la siguiente hacia arriba (y la orientación del campo de texto correcto).
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13458
  • Loc: Florida
  • Status: Offline

Nota Julio 3rd, 2004, 11:32 pm

Así que se utiliza con on (release) podría mirar somthing como este?

Código: [ Select ]
on(release){
    if(equations == undefined){
        loadText = new LoadVars();
        loadText.onLoad = function() {
            equations = [this.sola, this.solb, this.solc];
            sola.text = equations[0];
        };
        loadText.load("dataold.txt");
    }else if(solb.text == ""){
        solb.text = equations[1];
    }else if(solc.text == ""){
        solc.text = equations[2];
    }
}
  1. on(release){
  2.     if(equations == undefined){
  3.         loadText = new LoadVars();
  4.         loadText.onLoad = function() {
  5.             equations = [this.sola, this.solb, this.solc];
  6.             sola.text = equations[0];
  7.         };
  8.         loadText.load("dataold.txt");
  9.     }else if(solb.text == ""){
  10.         solb.text = equations[1];
  11.     }else if(solc.text == ""){
  12.         solc.text = equations[2];
  13.     }
  14. }
Strong with this one, the sudo is.
  • lostinbeta
  • Guru
  • Guru
  • Avatar de Usuario
  • Registrado: Jun 26, 2003
  • Mensajes: 1402
  • Loc: Philadelphia, PA
  • Status: Offline

Nota Julio 4th, 2004, 8:54 am

Bueno no es necesario que llame a la LoadVars () en el onrelease todo el tiempo, una vez que los datos se ha cargado, puede volverlo a usar sin embargo que usted desea. Por lo tanto, el loadVars código debe figurar en un marco.

En cuanto al resto de ella...si el / otro método es una forma en que podría hacerlo. Hay algunos otros, pero todos ellos son de tipo borrosa junto a mi cabeza en este momento (sorta algo hungover).
  • Ami
  • Newbie
  • Newbie
  • No Avatar
  • Registrado: Jul 02, 2004
  • Mensajes: 6
  • Loc: Malaysia
  • Status: Offline

Nota Julio 4th, 2004, 7:27 pm

perdido en fase beta y joebert:

hi, i ya Tyr Urs código n poner en jaque los botones de acción. Ambos de ellos sólo puede cargar la primera respuesta.

La otra pregunta es y cuando lo prueba el archivo fla tiene la palabra como (_level0.sola, _level0.solb._level0.solc) orientados a la dinámica texto before i haga clic en el botón de verificación.


¿cuál es el problema? i había probar con otro código como este:
[code] click_array = new Array ();
click_array =[""," 5x +6 = 7x-3 "," 2x = 9 "," x = 4. 5 "];

[code] (release) (
textBox.text = click_array [i];
i + +;
)

se puede dejar que me muestran la respuesta 1 de 1, pero no puede detener la respuesta n la respuesta está en el mismo texto dinámico no en la dinámica orientada texto como código anterior.


me puede ayudar a averiguar cómo solucionarlo?

gracias

Publicar Información

  • Total de mensajes en este tema: 10 mensajes
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 27 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC