2013-11-27 2 views
2

가상 작가를 만들고 있는데 단락 노드 안의 텍스트 노드에서 글자 수를 계산하는 데 문제가 있습니다. 기능, 나는 이런 식으로 뭔가 시도) (http://jsfiddle.net/Rfq68/ 내 문제가 countLetters에 있습니다 :텍스트 노드의 문자 계산하기

코드는 다음과 같습니다

var temp = ntext.match(new RegExp(search.toString().replace(/(?=[.\\+*?[^\]$(){}\|])/g, "\\"), "g")); 
count = temp; 

을하지만 전혀 작동하지 않았다, 나는 지금 당신의 도움이 필요합니다!

감사합니다.

+0

하는 방법은 어떻게 ntext.replace'에 대해 문자, 공백, 쉼표, 하이픈 등 –

+0

ntext.length''에 대해 (/ [^ A-ZA -Z]/g, '') .length' –

+1

을 원하는 –

답변

3

우선 노드에서 .match() 메서드를 사용하려고 시도합니다. 문자열에만 해당 메서드가 있습니다.

둘째, 노드에서 텍스트 데이터를 가져와 알파벳이 아닌 문자를 모두 바꾼 다음 모든 문자열에서 사용할 수있는 .length 속성으로 계산합니다.

function countLetters() { 
    return ntext.data.replace(/[^a-zA-Z]/g, '').length; 
} 

Fixed Fiddle

+0

'/ [^ a-z]/gi'를 사용할 수 있습니까? – Pavlo

+0

예. 나는 전자가 좀 더 명확하다는 것을 알지만 둘 다 똑같이 작동합니다. –

관련 문제