从字符串中获取第二个和第三个单词

Get second and third words from string

本文关键字:三个 单词 字符串 获取 第二个      更新时间:2023-09-26

我在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 = ???;

使用字符串split()按空格分隔字符串:

var words = string1.split(' ');

然后使用访问单词

var word0 = words[0];
var word1 = words[1];
// ...

首先,在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]);

这将为您提供第二个结果的第一个单词。

为了增加可能的解决方案,如果字符串中有多个空格,则使用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

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 来检查你有多少单词

const string="湖离这里很远。">

const[,second,third,]=string.split("(;