문장을 특정 단어 수 (NB. 문자가 아님)로 잘리는 방법은 무엇입니까?문장을 특정 단어 수만큼 자릅니다.
나는 split(" ")
을 사용하려고 생각했지만 단어를 어떻게 계산합니까? 예를 들어
:
Javascript word count cut off
=>Javascript word count
Want better search results? See our search tips!
=>Want better search
문장을 특정 단어 수 (NB. 문자가 아님)로 잘리는 방법은 무엇입니까?문장을 특정 단어 수만큼 자릅니다.
나는 split(" ")
을 사용하려고 생각했지만 단어를 어떻게 계산합니까? 예를 들어
:
Javascript word count cut off
=>Javascript word count
Want better search results? See our search tips!
=>Want better search
당신은 split
[MDN] 및 join
[MDN]를 사용할 수 있습니다.
"Want better search results? See our search tips".split(" ").splice(0,3).join(" ")
대단히 감사합니다. 빠른 답장. –
@fish : 다음 번에 참조 사이트로 SO를 사용하거나 "나만을 위해 만들어주세요"사이트를 사용하지 말고 시도를 게시하고 어려움을 설명하십시오. 건배! –
@Tomalak Geret'kal, ok, 웹 기술을 배우기위한 초보자로서 나를 용서해주십시오. –
분할 작업은 설명 된대로 수행합니다. 당신이 정규식을 사용하는 경우, 그러나, 당신은 전체 문자열을 분할 필요가 없습니다 :
var str = "Lions and tigers and bears";
var exp = /[A-Z|a-z]+/g;
var a = exp.exec(str); // Lions
var b = exp.exec(str); // and
var c = exp.exec(str); // tigers
'[A-Z | a-z]'는'A-Z','|'및'a-z'와 일치합니다. 문자 클래스 내에서 특별한 의미가없는'| '. 대소 문자를 구분하지 않으려면 'i'한정자를 사용하십시오. 어쨌든'\ w'를 사용하는 것이 더 좋을 것입니다 :'/ \ w +/g'. –
@Timbits도 좋은 방법이지만,'str'이 중국어 또는 라틴어 또는 json 데이터 인 경우에는/[A-Z | a-z] +/g'를 쉽게 사용할 수 없습니다. –
여기 내 유성 앱 쓴 "더 읽기"기능입니다. maxWords 매개 변수를 받아들이고 jquery의 text() 메소드를 사용하여 html 태그를 제거합니다.
희망이 있습니다.
function readMore(string, maxWords) {
var strippedString = $("<p>" + string + "</p>").text().trim();
var array = strippedString.split(" ");
var string = array.splice(0, maxWords).join(" ");
if(array.length > maxWords) {
string += "...";
}
return string ;
}
무엇을 시도 했습니까? 무엇이 효과가 없었습니까? 정확하게 당신은 어려움을 겪고 있습니까? – Oded
@Oded, 많은 답변은 문자를 자르기 위해'string length '을 사용합니다. 그래서 그 말은 깨질 것입니다. –
@fish : 그건 Oded가 물어 본 것이 아닙니다! –