2017-03-14 3 views
0

문자열에서 단어 수를 추출하는 방법을 찾고 있습니다.값을 기준으로 단어의 마지막 부분을 추출하는 방법

예를 들어 아래 문자열이 있습니다. 나는 "학습 센터 설정까지"입니다 문자열의 마지막 4 개 단어를 얻으려면 위의 값을 기준으로

var word = "Customer Courseware Development and OTB Creation - Learning Center Set Up" 

var value = 4; 

지금까지 내가 무슨 짓을했는지 인 이하 나는 단지 점점 "위로"단어.

var wordlength = 4; 

var str = "Customer Courseware Development and OTB Creation - Learning Center Set Up" 

var parts = str.substring(str.lastIndexOf(" ") - length); 

console.log(parts); 
+0

Array#slice()을 사용할 수 있습니다, 당신은 ** 사람을 선택할 수 있습니다. – bhansa

답변

0

이렇게 할 수 있습니다. 문장을 ' '으로 분할 한 다음 parts.length - wordlength부터 슬라이스하십시오.

var wordlength = 4; 
 
var str = "Customer Courseware Development and OTB Creation - Learning Center Set Up" 
 
var parts = str.split(' '); 
 

 
var newStr = parts.slice(parts.length-wordlength, parts.length).join(' '); 
 

 
console.log(newStr);

-1

사용 :

var word = "Customer Courseware Development and OTB Creation - Learning Center Set Up" 
var wordlength = 4 

var words = word.split(" ") 
var result = words.slice(words.length - wordlength) 

출력 : 다음

Array [ "Learning", "Center", "Set", "Up" ] 

그리고 당신이있어 위의 배열에서 문자열을 만들 :

result.join(" ") 

결과 : ** 대답으로 당신이 당신의 대답을 얻었다 경우

"Learning Center Set Up" 
+0

왜 downvote ?? 나는 누군가가하기 전에 대답을 들었다. – bhansa

+1

부정적인 인수는'.slice (-wordLength)'에 대한보다 일반적인 대답입니다. 'length-value'라고 말할 때'word.length - how_many_words_to_return'을 의미하는 것을 알지만 다른 곳에서는'length' 또는'value'를 언급하지 않고 생성 할 수있는 시작 문장의 길이에 따라 예를 들어, 작은 부정적인 주장. –

+0

@PeterBehr 의견을 보내 주셔서 감사합니다. 답변을 업데이트하겠습니다. – bhansa

1

당신은 join()

var wordlength = 4; 
 
var str = "Customer Courseware Development and OTB Creation - Learning Center Set Up"; 
 
var parts = str.split(' '); 
 
var newString = parts.slice(parts.length-wordlength, parts.length).join(" "); 
 

 
console.log(newString);

+0

@Bhansa ** 1st ** 나는 나의 대답을 편집하지 않을 것이다. OP의 문제를 해결하는 좋은 대답입니다. ** 2nd ** 당신의 대답은 제 것과 다릅니다. ** 3rd ** 목표는 처음에는 대답하지 않고 업보를 얻는 것입니다. 목표는 정확하고 명확한 솔루션을 제공함으로써 OP가 솔루션을 찾을 수 있도록 돕는 것입니다. OP는 이제 문제를 이해하는 데 도움이되는 다른 대답을 볼 수 있습니다. – Weedoze

+0

죄송합니다. 내가 잘못 말했지만 내 동기도 upvotes를 얻지 못합니다. 나는 당신이 당신의 대답에 더 많은 정보를 추가 할 수 있다면 그것을 지적하고있었습니다. OP가 더 많은 방법을 가질 수 있습니다. 범죄는 없습니다. – bhansa

관련 문제