我在jQuery中有字符串:
var string1 = 'Stack Exchange premium';
var string2 = 'Similar Questions'; // only two
var string3 = 'Questions that may already have your answer';
我怎样才能从第二和第三个词中得到什么?
var second1 = ???;
var third1 = ???;
var second2 = ???;
var third2 = ???;
var second3 = ???;
var third3 = ???;
答案 0 :(得分:16)
使用字符串split()
按空格分割字符串:
var words = string1.split(' ');
然后使用以下方式访问单词:
var word0 = words[0];
var word1 = words[1];
// ...
答案 1 :(得分:8)
首先,你没有“在jQuery中”的字符串和变量。 jQuery与此无关。
其次,改变你的数据结构,如下所示:
var strings = [
'Stack Exchange premium',
'Similar Questions',
'Questions that may already have your answer'
];
然后使用第二个和第三个单词创建一个新数组。
var result = strings.map(function(s) {
return s.split(/\s+/).slice(1,3);
});
现在您可以像这样访问每个单词:
console.log(result[1][0]);
这将为您提供第二个结果的第一个字。
答案 2 :(得分:3)
var temp = string1.split(" ")//now you have 3 words in temp
temp[1]//is your second word
temp[2]// is your third word
你可以通过temp.length检查你有多少单词
答案 3 :(得分:3)
只是为了添加可能的解决方案,如果字符串中包含多个空格,则使用split()
的技术将失败。
var arr = " word1 word2 ".split(' ')
//arr is ["", "", "", "word1", "", "", "word2", "", "", "", ""]
要避免此问题,请使用以下
var arr = " word1 word2 ".match(/\S+/gi)
//arr is ["word1", "word2"]
然后通常,
var word1 = arr[0];
var word2 = arr[1]
//etc
也不要忘记使用.length
属性检查数组长度,以避免在变量中获得undefined
。
答案 4 :(得分:0)
const string =“离这里很远的湖。”
const [,second,third,] = string.split(“”);