【问题标题】:How to get abc from "abc def"?如何从“abc def”获取abc?
【发布时间】:2009-07-18 05:28:46
【问题描述】:
"abc def"
"abcd efgh"

如果我有一个大字符串,其中有一个空格分隔两个不同长度的子字符串,从较大字符串中提取每个子字符串的最佳方法是什么?

因为这是一个字符串而不是数组,所以数组语法s[0] 只会检索字符串的第一个字母('a'),而不是第一个子字符串。

【问题讨论】:

标签: javascript string substring


【解决方案1】:

使用String对象的split方法:

"abc def".split(' ')[0] // Returns "abc"

像这样工作:

"string".split('separator') // Returns array

【讨论】:

  • 只需要在我之前发布一秒钟,不是吗?
【解决方案2】:
var arr = "abc def".split(" ");
document.write(arr[0]);

应该工作

【讨论】:

    【解决方案3】:

    以上两个答案都是正确的,我只是把它放在上面,以便用户可以对每个令牌进行一些操作。您只需要为此添加一个循环。

    function splitStr(str){
        var arr = str.split(" ");
        for(i=0 ;i < arr.length ; i++){
            //You will get a token here 
            // var token = arr[i];
            // Do some thing with this token
        }
    }
    

    可以为其他函数中的任何其他操作返回数组

    function splitStr(str){
        var arr = str.split(" ");
        return arr;
    }
    

    【讨论】:

    • 很抱歉,第二个函数splitStr 的意义何在?是不是有点多余?
    • 是的,这只是一个示例代码,或者您可以说返回令牌数组的字符串拆分功能的示例。
    猜你喜欢
    • 2014-08-11
    • 2017-09-09
    • 1970-01-01
    • 2013-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-07
    • 1970-01-01
    相关资源
    最近更新 更多