Javascript - взорвать эквивалент? - PullRequest
7 голосов
/ 18 февраля 2012

Итак, у меня есть строка с разделителем |, один из разделов содержит «123», есть ли способ найти этот раздел и распечатать содержимое?что-то вроде PHP взорваться (но Javascript), а затем цикл, чтобы найти '123' может быть?: /

Ответы [ 4 ]

18 голосов
/ 18 февраля 2012
var string = "123|34|23|2342|234",
    arr = string.split('|'),
    i;

for(i in arr){
    if(arr[i] == 123) alert(arr[i]);
}

Или:

for(i in arr){
    if(arr[i].indexOf('123') > -1) alert(arr[i]);
}

Для получения дополнительной информации о string манипуляциях на основе и функциях см .:

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String

3 голосов
/ 18 февраля 2012

Вы можете использовать split() в JavaScript:

var txt = "123|1203|3123|1223|1523|1243|123",
    list = txt.split("|");

console.log(list);

for(var i=0; i<list.length; i++){
    (list[i]==123) && (console.log("Found: "+i));  //This gets its place
}

LIVE DEMO: http://jsfiddle.net/DerekL/LQRRB/

1 голос
/ 18 февраля 2012

Это должно сделать это:

var myString = "asd|3t6|2gj|123hhh", splitted = myString.split("|"), i;
for(i = 0; i < splitted.length; i++){ // You could use the 'in' operator, too 
    if(splitted[i].match("123")){
        // Do something
        alert(splitted[i]); // Alerts the entire contents between the original |'s 
        // In this case, it will alert "123hhh". 
    }
}
1 голос
/ 18 февраля 2012

.split является эквивалентом explode, тогда как .join является эквивалентом implode.

var myString = 'red,green,blue'; 
var myArray = myString.split(','); //explode
var section = myArray[1];
var myString2 = myArray.join(';'); //implode
...