자바스크립트로 한글 조사 갯수 카운팅이 가능한가요?
본문
자바스크립트로 배열내에서 특정 문자의 갯수를 카운팅하는건 가능한걸로 알고있습니다.
그런데, 혹시 한글 조사도 그런 방식으로 카운팅이 가능한가요?
한글 조사의 경우
띠어쓰기를 하고
단어별로 종성을 체크해서, 마지막 단어가 조사인 경우
은,는,을,를...의.. 등등의 여부를 체크해야 하는건가요?
찾아보고 있는데, 마땅한 답이 안나오네요.;;
혹시 아시는 분 계실까요?
답변 3
어차피 조사 다음은 띄어쓰기가 들어가니까...
문자열 = "우리는 민족중흥의 역사적 사명을 띠고 이 땅에.........."
조사 = ["은 ", "는 ", "이 ", "가 ",....]; 등등으로 배열을 만들고
숫자 = 0;
배열을 루프문으로 돌리면서 이프문으로 문자열에 맞는 값이 나올 때는 숫자 += 1 을 해서 카운터하는 방법이 최선으로 보이네요.ㅜㅠ
<script>
my = "우리는 민족 중흥의 역사적 사명을 띠고 이 땅에 태어났다";
you = ["는 ", "의 ", "을 ", "에 "];
num = 0;
for (i in you) if (my.indexOf(you[i]) > -1) num += 1;
document.write(num);
</script>
그런데 위의 예는 "이"도 조사인데 홀로 쓰이고 있으니
또 조건문을 하나 더 걸어 앞뒤로 공백이 있는 한개짜리 글자는 제외하는 로직도 추가해야 겠네요.
또 다른 변수도 나올 수 있구요.
근데 이땅이 맞는 건가요? 이 땅이 맞는 건가요?ㅋ
자바스크립트로도
구현은 할 수 있겠으나 힘듭니다.
형태소분석기를 이용하여 해결을 하셔야 합니다.
파이썬이, 자바, c 등으로 구현된것이 있습니다.
힘들것 같은데요.
정확하게 문법을 다 지켜서 했다면 그나마 가능성이 있어 보이긴 하는데,
조사를 생략한 문장인데 끝자리가 조사와 같은 글자여서 조사라고 카운팅 해버리면 정확한 답을 얻기 힘들어 집니다. 또는 조사와 합쳐져 버린 단어 같은 부분이나 조사처럼 보이는 관계사(?)도요.
예를들어 "평화를 사랑하는 너와 난 사이 좋다."