플래시 입력 텍스트 필드에 편집 옵션을 만들 예정입니다. 라이브 단어 수가 필요합니다. 사용자가 입력하는 단어의 수를 계산하려면 어떻게해야합니까?AS3 텍스트 필드에서 실시간 단어 카운터를 만드는 방법은 무엇입니까?
-1
A
답변
1
시도 뭔가 :
function countWords(input:String):int
{
// Match collections of non-whitespace characters.
return input.match(/[^\s]+/g).length;
}
일부 테스트 :
trace(countWords("")); // 0
trace(countWords("Simple test.")); // 2
trace(countWords(" This is an untrimmed string ")); // 5
1
텍스트 필드의 단어 수를 얻으려면 텍스트 필드의 문자열을 공백으로 나눕니다. 텍스트 필드에있는 모든 단어의 배열을 반환합니다. 입력 얼마나 많은 단어를 말할 배열의 길이를 가져옵니다 :
는var words:Array = myTextFieldInput.split(' ');
var numberOfWords = words.length;
한 텍스트 필드를 선택할 수 있는지 등의 텍스트 필드에서 텍스트를 복사하고 다른에 붙여에 관해서는, 그 동작은 운영 네이티브해야한다 체계. 우리가 공백이 아닌 문자의 그룹을 계산이 같은
정규식이 당신의 친구입니다. 문자열의 시작이나 끝이 아닌 공백을 맞추고, 배열의 길이를 얻은 다음 첫 단어에 1을 더합니다. 충분히 쉬워. –
왜 1을 더합니까? 배열의 길이는 얼마나 많은 단어가 있는지입니다. – Ribs
@Ribs 당신은 분열을 생각하고 있습니다. 이것이 더 나은 경로일지도 모릅니다. RegEx를 사용하면 공간을 계산합니다. 이 문장은 9 단어지만 8 칸 밖에 없습니다. 따라서 그 차이를 설명하기 위해 하나를 추가해야합니다. –