2012-04-11 77 views
2

我有一个函数需要在字符串中的每个单词的末尾附加一个数字序列(从1开始)。这里是我的功能:在字符串中的每个单词后附加一个数字序列

function insertNum(str) { 
    var word = new Array(); 
    word = str.split(" "); 
    return src[0] + "1 " + src[1] + "2 " + src[2] + "3 " + src[3]; 
} 

insertNum("word word word word."); // return "word1 word2 word3 word4." 
insertNum("word word word."); // return "word1 word2 word3." 
+0

什么是你的问题? – 2012-04-11 04:22:15

回答

3

这应该这样做...

function insertNum(str) { 
    var index = 1; 
    return str.replace(/\w\b/g, function(match) { 
     return match + index++; 
    }); 
} 

jsFiddle

+2

很好的使用lambda函数。 – staticsan 2012-04-11 04:24:47

+0

最后一个单词怎么样?这里?这不会成为词。[somedigit]? – KooiInc 2012-04-11 05:54:56

+0

@KooiInc Nup,检查小提琴。 – alex 2012-04-11 06:16:52

1

一个简单的方法:

function insertNum(str) { 
    var word = new Array(); 
    word = str.split(" "); 
    var tmp = ""; 
    for (i = 1; i <= word.length; i ++) { 
     tmp += word[i-1] + i + " "; 
    } 
    return tmp; 
} 
0
int count = 1; 
    String s = "This is nice"; 

    String a[] = s.split(" "); 

    for(String m : a){ 
     System.out.print(m + count++ + " "); 
    } 
相关问题