2013-06-29 77 views

回答

1
var myStr = "ABC123 Mercedes Benz = 300,000" 
myStr =/[^=]+/.exec(myStr); 
alert(myStr); 
0

也許不是最好的方式,但

function getSmth(str) { 
    var i = str.indexOf(' ') + 1; 
    var j = str.indexOf('='); 
    return str.substr(i, j - i - 1); 
} 
2

您應該使用regular expression

var myStr = "ABC123 Mercedes Benz = 300,000" 
var targetStr = myStr.replace(/^[^\s]*\s(.*)=.*$/, "$1") 

replace方法返回一個新字符串,所以myStr仍持有其原始值,但targetStr有匹配部分。

0

試試這個:

function getPartial(str) 
{ 
    var partial = ''; 

    var io = str.indexOf(' '); 
    if (io > 0) 
    { 
     partial = str.substring(io); 
     var io2 = partial.indexOf('='); 
     if (io2 > 0) 
     { 
      partial = partial.substring(0, io2); 
     } 
    } 

    return partial; 
} 

var str = 'ABC123 Mercedes Benz = 300,000'; 
var partial = getPartial(str); 

alert(partial); 
0
var s = "ABC123 Mercedes Benz = 300,000"; 
s = s.substring(s.indexOf(" ")+1); 
var result = s.substring(0, s.indexOf("=")-1); 
1

你真的應該發佈一些自己的努力,而不是想到這麼爲你做的一切。這應該適用於這個特定的情況;

var get_second_word = function (string){ 

     var p1 = string.indexOf(" "),//get position of first space 
      p2 = string.indexOf("="),//get position of = 
      len = p2 - p1,// length of chunk = pos of '=' - pos of first space 
      chunk = string.substr(p1, len); //get the substring 

      return chunk; 

    }, 
    string = "ABC123 Mercedes Benz = 300,000", 
    word = get_second_word(string); 

    document.write(word);// prints 'Mercedes Benz' 
相關問題