KR100358445B1 - 통신 시스템에서의 문자열 검색 방법 - Google Patents

통신 시스템에서의 문자열 검색 방법 Download PDF

Info

Publication number
KR100358445B1
KR100358445B1 KR1019990033080A KR19990033080A KR100358445B1 KR 100358445 B1 KR100358445 B1 KR 100358445B1 KR 1019990033080 A KR1019990033080 A KR 1019990033080A KR 19990033080 A KR19990033080 A KR 19990033080A KR 100358445 B1 KR100358445 B1 KR 100358445B1
Authority
KR
South Korea
Prior art keywords
tribe
search
string
button
numeric
Prior art date
Application number
KR1019990033080A
Other languages
English (en)
Other versions
KR20010017519A (ko
Inventor
이은경
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR1019990033080A priority Critical patent/KR100358445B1/ko
Publication of KR20010017519A publication Critical patent/KR20010017519A/ko
Application granted granted Critical
Publication of KR100358445B1 publication Critical patent/KR100358445B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/02Constructional features of telephone sets
    • H04M1/23Construction or mounting of dials or of equivalent devices; Means for facilitating the use thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Telephone Function (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

본 발명은 통신 시스템에 저장된 숫자, 영문 및 한글에 대한 문자열이 저장된 구조와 통신 시스템의 키패드의 자판 배열 구조에 따라 기저장된 문자열들을 트라이브(Tribe)로 분류하여 검색할 수 있도록 통신 시스템에서의 문자열 검색 방법에 관한 것이다.
종래의 통신 시스템에서는 메모리에 저장된 문자열들을 검색하는데 있어, 단순히 선형 검색 또는 2진 검색 방법을 이용하여 문자열들을 검색함에 따라 실제로 사용자가 검색하고자 하는 문자열을 찾는데 많은 시간이 소요되는 단점이 있었다.
본 발명은 통신 시스템에 코드값의 크기 순으로 저장된 각 문자열들을 시스템의 키패드 배열 구조에 따라 다수개의 트라이브로 분류한 후, 문자열 검색을 위한 소정 숫자버튼 입력 시에 해당 숫자버튼에 할당된 숫자, 영문 및 한글의 유무에 따라 검색할 트라이브들을 순차적으로 선택하여 각 트라이브에 포함된 문자열들을 선형 검색 방법에 따라 검색함으로써, 해당 통신 시스템에 저장된 문자열을 찾는데 소요되는 시간을 단축할 수 있게 된다.

Description

통신 시스템에서의 문자열 검색 방법{Character String Search Method In Communication System}
본 발명은 통신 시스템에서의 문자열 검색 방법에 관한 것으로, 특히 통신 시스템에 저장된 숫자, 영문 및 한글에 대한 문자열이 저장된 구조와 통신 시스템의 키패드의 자판 배열 구조에 따라 기저장된 문자열들을 트라이브로 분류하여 검색할 수 있도록 통신 시스템에서의 문자열 검색 방법에 관한 것이다.
일반적으로, 유선 통신을 위한 유선 단말기나 이동 통신을 위한 이동 단말기와 같이 소정의 문자를 입력할 수 있는 키패드를 구비하는 통신 시스템에서는 해당 키패드에 구비된 숫자버튼을 이용하여 숫자와 영문 및 한글 문자열을 저장 및 검색할 수 있는데, 이때 해당 키패드는 숫자버튼 외에 소정의 기능버튼을 구비하고 있으며, 해당 숫자버튼은 숫자 문자열의 입력 기능 외에 대응하는 영문 또는 한글 문자열의 입력 기능을 갖게 된다.
예를 들어, 첨부된 도면 도 1과 같은 숫자버튼 구조를 갖는 키패드를 구비하는 통신 시스템은 일반적으로 각종 버튼을 구비한 키패드와, 해당 키패드를 통해 입력되는 버튼을 감지하는 키 입력부와, 문자열 검색에 필요한 프로그램 및 데이터를 저장하는 메모리부와, 해당 키 입력부를 통해 입력된 버튼을 확인하여 문자열 검색의 전반적인 동작을 제어하는 제어부와, 해당 제어부의 제어에 따라 검색 창 및 검색된 문자열 등을 디스플레이해 주는 디스플레이부를 포함하여 이루어진다. 이때, 메모리부에 저장된 문자열들을 검색하고자 사용자가 키패드의 검색버튼을 누르면, 키 입력부는 해당 검색버튼의 입력을 감지하여 제어부에 통보하며, 제어부는 디스플레이부를 제어하여 검색 창을 표시해 준다. 그리고, 사용자가 검색하고자 하는 문자열에 해당되는 소정의 숫자버튼을 누른 후에 확인버튼(도면에 도시되어 있지 않음)을 누르면, 키 입력부에서 이를 감지하여 제어부에 통보하며, 제어부는 메모리부에 저장되어 있는 프로그램에 따라 문자열 검색 제어 동작을 수행하는 CPU로, 해당 입력된 숫자버튼에 해당되는 키값을 가지는 모든 문자열들을 메모리부에서 검색하여 디스플레이해 준다.
이때, 해당 통신 시스템에서 내부적으로 문자열을 검색하는 방법으로는 사용자가 키패드를 통해 입력한 숫자버튼에 해당되는 키값을 이용하여 메모리부에 저장된 모든 문자열들과 하나하나씩 차례로 비교하여 일치하는 키값을 가지는 문자열이 있는지를 검색하는 선형 검색(linear search) 방법과, 메모리부에 저장된 모든 문자열들을 2등분으로 나누어서 해당 나눈 반에 해당하는 모든 문자열들을 사용자가 키패드를 통해 입력한 숫자버튼에 해당되는 키값과 비교해서 일치하는 키값을 가지는 문자열이 있는지를 검색한 후에 없는 경우에 남은 반을 다시 2등분으로 나누어서 다시 키값을 비교하는 동작을 반복하여 일치하는 키값을 가지는 문자열이 있는지를 검색하는 2진 검색(binary search) 방법이 사용되었다.
한편, 최근에는 통신 시스템을 이용하여 단순한 음성이나 팩스 또는 그 외의 통신 기능만을 제공하는 것이 아니고, 개인 정보 관리(Personal InformationManagement) 기능이나 인터넷 기능 등 다양한 서비스를 제공함에 따라 수천 개 이상의 전화번호를 갖는 전화번호부나 각종 개인 정보 관련 문자열을 저장할 필요성이 증대되고 있다.
그런데, 종래의 통신 시스템에서 메모리에 저장된 문자열들을 검색하는데 있어서, 메모리에 저장시킨 문자열의 개수가 작은 경우에는 별 문제가 되지 않았지만, 최근들어 수천 개 이상의 전화번호를 갖는 전화번호부나 각종 개인 정보 관련 문자열을 저장하는 메모리의 경우에, 키패드의 자판 배열 구조와 메모리에 저장된 문자열의 특성을 고려하지 않고 단순히 키값을 비교하는 선형 검색 또는 2진 검색 방법으로는 메모리에 저장된 많은 양의 문자열과 각각 키값을 비교하여 문자열을 검색함에 따라 실제로 사용자가 검색하고자 하는 문자열을 찾는데 많은 시간이 소요되는 단점이 있었다.
본 발명은 전술한 바와 같은 단점을 해결하기 위한 것으로 그 목적은, 통신 시스템에 코드값의 크기 순으로 저장된 각 문자열들을 통신 시스템의 키패드의 자판 배열 구조에 따라 다수개의 트라이브로 분류한 후, 문자열 검색을 위한 소정 숫자버튼 입력 시에 해당 숫자버튼에 할당된 숫자, 영문 및 한글의 유무에 따라 검색할 트라이브들을 순차적으로 선택하여 각 트라이브에 포함된 문자열들을 선형 검색 방법에 따라 검색하도록 함으로써, 해당 통신 시스템의 문자열 저장 구조와 키패드 자판 배열 구조에 따라 효율적인 문자열 검색이 가능하도록 하는데 있다.
도 1은 일반적인 통신 시스템에 구비된 키패드의 배열 구조를 일 예로 도시한 도면.
도 2는 본 발명의 실시 예에 따른 아스키코드(ASCII Code)에 대한 트라이브(Tribe) 분류를 도시한 도면.
도 3은 본 발명의 실시 예에 따른 한글 코드에 대한 트라이브 분류를 도시한 도면.
도 4는 본 발명의 실시 예에 따른 트라이브 검색 순서를 도시한 도면.
도 5는 본 발명의 실시 예에 따른 통신 시스템에서의 문자열 검색 방법을 구현하기 위한 동작 순서도.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 특징은, 사용자에 의해 눌러진 키패드 자판의 키값을 제어부에서 인식하여 해당 키값에 대응하는 특수 문자, 영문 또는 한글을 메모리부로부터 판독할 수 있도록 해당 자판의 숫자버튼에 특수 문자, 영문 또는 한글을 할당시킨 자판 배열 구조를 가지는 통신 시스템에 있어서, 문자열들이 메모리부에 저장된 구조와 상기 자판 배열 구조를 고려하여 각 문자열들을 다수 개의 트라이브들로 분류하고 상기 자판 배열 구조에 따라 숫자버튼의 입력 키값에 대응하는 트라이브 검색 순서를 정하는 과정과; 문자열 검색을 위한 숫자버튼의 입력을 확인하여 해당 숫자버튼의 입력 키값에 대응하는 트라이브 검색 순서에 따라 검색할 트라이브를 차례로 선택하여 해당 숫자버튼의 입력 키값과 일치하는 문자로 시작하는 문자열을 찾기 위해 선형 검색 방식으로 해당 선택한 트라이브 내의 모든 문자열을 검색하는 과정을 포함하는데 있다.
바람직하게는, 상기 트라이브는 숫자, 영문 대소문자 및 기호를 포함하는 아스키 코드에 대한 트라이브와, 한글을 포함하는 한글 코드에 대한 트라이브로 분류되며, 해당 아스키 코드에 대한 트라이브는 각 숫자버튼의 키값에 대응하는 숫자에 대한 숫자 트라이브와, 각 숫자버튼의 키값에 대응하는 영문 대문자에 대한 다수 개의 트라이브와, 각 숫자버튼의 키값에 대응하는 영문 소문자에 대한 다수 개의 트라이브로 분류되며, 해당 한글 코드에 대한 트라이브는 각 숫자버튼의 키값에 대응하는 한글 자음에 대한 트라이브와, 각 숫자버튼의 키값에 대응하는 한글에 대한 다수 개의 트라이브로 분류되어 이루어진 것을 특징으로 한다.
또한 바람직하게는, 상기 문자열 검색 과정은 문자열 검색을 위한 숫자버튼의 입력을 확인하여 해당 숫자버튼의 입력 키값에 대응하는 숫자 트라이브를 선택하는 단계와; 상기 숫자 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 상기 숫자 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하는 단계와; 상기 숫자 트라이브에 대한 검색이 종료된 경우에 상기 숫자버튼의 입력 키값에 대응하는 트라이브 검색 순서에 따라 다음 트라이브를 선택하는 단계와; 상기 선택한 다음 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 해당 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하여 그 결과를 디스플레이하는 단계를 포함하는 것을 특징으로 한다.
또한 바람직하게는, 상기 다음 트라이브 선택 단계는 상기 입력된 숫자버튼에 영문이 할당되어 있는지를 확인하여 해당 숫자버튼의 입력 키값에 대응하는 영문 대문자 트라이브를 선택하는 단계와; 상기 영문 대문자 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 상기 영문 대문자 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하는 단계와; 상기 영문 대문자 트라이브에 대한 검색이 종료된 경우에 상기 숫자버튼의 입력 키값에 대응하는 영문 소문자 트라이브를 선택하는 단계와; 상기 영문 소문자 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 상기 영문 소문자 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하는 단계와; 상기 영문 소문자 트라이브에 대한 검색이 종료된 경우나 상기 입력된 숫자버튼에 영문이 할당되어 있지 않은 경우에 해당 숫자버튼에 한글이 할당되어 있는지를 확인하는 단계와; 상기 숫자버튼에 한글이 할당되어 있는 경우에 상기 숫자버튼의 입력 키값에 대응하는 한글 트라이브를 선택하는 단계를 더 포함하는 것을 특징으로 한다.
이하, 본 발명의 실시 예를 첨부한 도면을 참조하여 상세하게 설명하면 다음과 같다.
본 발명의 실시 예에 따른 통신 시스템은 전화기, 휴대폰 등과 같은 통신 장치의 인명부, 전화번호부 등의 검색 속도를 개선하기 위해서, 자체에 구비된 키패드의 자판 배열 구조와 메모리에 저장되는 문자열의 특성을 고려하여 해당 메모리에 저장된 문자열들을 검색하도록 이루어진다.
즉, 해당 문자열들(예로, 영문, 숫자, 한글 등)이 메모리에 저장된 구조와 키패드의 자판 배열 구조를 고려하여 각 문자열들을 도 2 및 도 3에 도시된 바와 같이 다수 개의 트라이브(Tribe)들로 분류하고, 해당 키패드의 자판 배열 구조에 따라 키패드의 입력 키값에 대한 트라이브의 다음 트라이브(Next Tribe)를 도 4에 도시된 바와 같이 설정하여 입력 키값에 대응하는 트라이브 검색 순서를 정하도록 한다. 여기서, 해당 키패드의 자판 배열 구조란 도 1에 도시된 바와 같이, 해당 키패드의 각 숫자버튼에 특수 문자, 영문 및 한글이 할당되어 있는데, 해당 각 숫자버튼을 사용자가 누르면 제어부에서 해당 각 숫자버튼의 키값을 인식하고 해당 키값에 대응하는 특수 문자, 영문 및 한글을 판독할 수 있도록 메모리부에 저장된 구조를 말한다. 예를 들어, 숫자버튼 '1'에 대응하는 문자는 'ㄱ', 'ㅣ' 및 '@'이며, 숫자버튼 '5'에 대응하는 문자는 'J', 'K', 'L', 'ㅁ', 'ㅕ' 및 'ㅍ'이다.
그리고, 한 번의 키값 입력에 대해서, 시작 트라이브는 도 2의 숫자 트라이브(NUM_TRIBE)로 인식하며, 상기 트라이브의 검색은 각 트라이브의 시작 문자를 검색 문자열로 하여 2진 검색하되, 한 트라이브 내에서는 순차적으로 검색하는 선형 검색하여 해당 입력 키값과 일치하는 문자로 시작하는 문자열을 찾으며, 해당 키값에 속하는 트라이브를 모두 찾은 다음에 현재 트라이브(Current Tribe)에 대한 다음 트라이브는 도 4에 도시된 바와 같이 입력된 키값에 대한 검색 순서에 따라 검색하며, 현재 트라이브가 숫자 트라이브(NUM_TRIBE)로 다시 되돌아오면 검색을 종료하게 된다.
전화기에 구비된 키패드가 첨부된 도면 도 1에 도시된 바와 같은 숫자, 영문, 한글 등의 자판 배열 구조를 갖는다고 가정한 상태에서, 본 발명의 실시 예에 따른 통신 시스템에서의 문자열 검색 동작을 예를 들어 설명하면 다음과 같다.
먼저, 본 발명의 실시 예에 따른 통신 시스템의 문자열 저장 구조를 예를 들어 도 2와 도 3을 참고하여 설명하면, 메모리부에 저장 가능한 문자로는 아스키 코드 '0x00' ~ '0x127'에 포함되는 숫자, 영문 대소문자 및 기호(도면에는 도시되어 있지 않음)와, 한글 코드 규격인 KSC(Korean Standard Code) 5601(정보 교환용 부호, 한글 및 한자)의 '0xA4A1' ~ '0xA4BE'에 포함되는 한글 자음('ㄱ' ~ 'ㅎ')과, 'OxB0A0' ~ '0xC8FE'에 포함되는 한글('가' ~ '힝')이 있으며, 해당 각 문자열은 코드값의 크기 순으로 저장된다.
이때, 해당 통신 시스템 사용자가 키패드에 구비된 숫자버튼(0 ~ 9)을 눌러 메모리부에 기저장된 문자열을 검색하고자 할 때, 키 입력부에서 눌려진 숫자버튼에 대응하는 입력 키값을 제어부에 통보하며, 해당 제어부는 해당 입력 키값에 따라 해당 키값에 대응하는 숫자, 영문의 대소문자, 한글의 자음으로 시작하는 문자열을 메모리부로부터 검색하는데, 즉 숫자의 경우에는 해당 번호, 영문의 경우에는 해당 키값에 대응하는 알파벳, 한글의 경우에는 해당 키값에 대응하는 자음으로 시작하는 문자를 검색한다.
그리고, 사용자가 다음 숫자버튼을 누른 경우, 키 입력부에서는 눌려진 숫자버튼에 대응하는 입력 키값을 제어부에 통보하며, 해당 제어부는 문자열의 첫 번째, 두 번째 문자가 상술한 바와 같은 규칙에 해당하는 문자열을 메모리부로부터 검색한다.
예를 들어, 통신 시스템의 메모리부에 '123', '50번지', 'David Marvin', 'John Tailor', 'LG', '김건욱', '김영식', '문철수', '박만수', '이창원', '표은진' 및 '황규상'의 문자열이 저장되어 있는 경우, 사용자가 숫자버튼 '5'를 누르면, 제어부는 메모리부로부터 해당 숫자 '5'로 시작하는 문자열, 영문 'J', 'K', 'L'로 시작하는 문자열 및 한글 'ㅁ', 'ㅍ'으로 시작하는 문자열인 '50번지', 'John Tailor', 'LG', '문철수', '표은진'을 찾아내게 된다.
그리고, 사용자가 다음 숫자버튼 '0'을 누른 경우, 제어부는 위의 결과에서 두 번째 문자가 숫자 '0'인 '50번지'와 한글 'ㅇ'인 '표은진'을 찾아내게 된다.
한편, 상술한 바와 같은 검색 결과를 얻게 위해서는 해당 통신 시스템의 메모리부에 저장되는 문자열에 대한 트라이브들을 설정해야 하는데, 제어부는 메모리부에 저장된 프로그램에 따라 상술한 바와 같이 문자열들이 메모리에 저장된 구조와 키패드의 자판 배열 구조를 고려하여 각 문자열들을 도 2와 도 3과 같은 다수 개의 트라이브들로 분류하고 해당 키패드의 자판 배열 구조에 따라 키패드의 입력 키값에 대한 트라이브의 다음 트라이브를 도 4와 같은 입력 키값에 대한 트라이브 검색 순으로 설정하도록 한다. 여기서, 트라이브의 분류는 숫자, 영문 대소문자 및 기호를 포함하는 아스키 코드에 대한 트라이브와, 한글을 포함하는 한글 코드에 대한 트라이브로 분류한다.
이때, 해당 아스키 코드에 대한 트라이브 분류는 첨부한 도면 도 2에 도시한 바와 같이, 16진수 값의 크기 순서에 따라 각 숫자버튼('0' ~ '9')의 키값에 대응하는 숫자에 대한 숫자 트라이브(NUM_TRIBE)와, 각 숫자버튼의 키값에 대응하는 영문 대문자에 대한 다수 개(8개)의 트라이브(***_LARGE_TRIBE)와, 각 숫자버튼의 키값에 대응하는 영문 소문자에 대한 다수 개(8개)의 트라이브(***_SMALL_TRIBE)로 분류된다.
그리고, 해당 한글 코드에 대한 트라이브 분류는 첨부한 도면 도 3에 도시한 바와 같이, 16진수 값의 크기 순서에 따라 각 숫자버튼의 키값에 대응하는 한글 자음('ㄱ' ~ 'ㅎ')에 대한 트라이브(SE_TRIBE)와, 각 숫자버튼의 키값에 대응하는 한글 ('가' ~ '힝')에 대한 다수 개(14개)의 트라이브(*A_TRIBE)로 분류된다.
이와 같이, 문자열에 대한 트라이브들을 메모리부에 설정된 상태에서, 사용자가 누른 숫자버튼에 대응하는 입력 키값에 대해서 트라이브들을 검색하기 위한 내부적인 트라이브 검색 순서는 해당 메모리부에 설정된 트라이브들의 16진수 값의 크기 순서로 수행된다.
즉, 첫 번째 입력 키값에 대한 문자열 검색의 시작 트라이브는 아스키 코드에 대한 트라이브들 중의 숫자 트라이브(NUM_TRIBE)가 되며, 해당 숫자 트라이브(NUM_TRIBE)를 검색한 후에 입력 키값에 따라 영문 대문자 트라이브(***_LARGE_TRIBE), 영문 소문자 트라이브(***_SMALL_TRIBE) 순으로 검색하게 된다.
그리고, 해당 아스키 코드에 대한 트라이브를 검색한 후에 입력 키값에 따라 한글 자음 트라이브(SE_TRIBE), 한글 트라이브(*A_TRIBE) 순으로 검색하게 된다.
이러한 트라이브 검색 순서를 키패드를 통해 입력되는 각 숫자버튼의 키값에 따라 설명하면, 첨부한 도면 도 4와 같이 나타낼 수 있다. 예를 들어, '1'에 대한 문자열 검색은 숫자 트라이브(NUM_TRIBE), 한글 자음 트라이브(SE_TRIBE), '가'에 해당하는 한글 트라이브(GA_TRIBE) 순으로 검색하며, '2'의 경우에 숫자 트라이브(NUM_TRIBE), 'A' ~ 'C'에 해당하는 영문 대문자 트라이브(ABC_LARGE_TRIBE), 'a' ~ 'c'에 해당하는 영문 소문자 트라이브(ABC_SMALL_TRIBE), 한글 자음 트라이브(SE_TRIBE), '나'에 해당하는 한글 트라이브(NA_TRIBE) 순으로 검색하게 된다.
그리고, 한 번의 키값 입력에 대해서, 해당 키값에 대응하는 숫자 트라이브(NUM_TRIBE)를 먼저 검색한 후에, 해당 입력 키값에 따라 상술한 바와 같은 순서로 트라이브 검색을 수행한다. 이때, 해당 트라이브 검색은 각 트라이브의 시작 문자를 검색 문자열로 하여 2진 검색하되, 한 트라이브 내에서는 순차적으로 검색하는 선형 검색 방식으로 해당 트라이브에 해당하는 모든 문자열을 차례로 검색하여 해당 입력 키값과 일치하는 문자로 시작하는 문자열을 찾는데, 현재 트라이브에 대한 다음 트라이브를 도 4에 도시된 바와 같은 순서대로 하나씩 선택하여 차례로 검색하게 된다.
그리고, 최종적으로 현재 트라이브가 숫자 트라이브(NUM_TRIBE)로 다시 되돌아오면 한 번의 키값 입력에 대한 검색을 종료하며, 다른 키값의 입력이 있으면 상술한 바와 같은 동작을 다시 수행하고 다른 키값의 입력이 없으면 그 동안 검색한 결과를 디스플레이하게 된다.
상술한 바와 같은 통신 시스템에서의 문자열 검색 동작을 첨부한 도면 도 5를 참조하여 설명하면 다음과 같다.
먼저, 상술한 바와 같이 아스키 코드와 한글 코드를 메모리에 영문, 숫자, 한글 등의 문자열이 저장된 구조와 키패드 자판의 배치를 고려하여 도 2 및 도 3과 같이 다수 개의 트라이브들로 분류하고, 키패드 자판의 배치에 따라 입력 키에 대한 트라이브의 다음 트라이브를 설정하여 도 4와 같은 트라이브 검색 순서를 정한다. 그런 후, 사용자가 문자열을 검색하기 위한 소정의 검색버튼을 누른 후에 찾고자하는 문자열에 해당되는 소정의 숫자버튼을 누르면, 키 입력부에서는 키패드를 통해 숫자버튼의 키 입력을 감지하여 이를 제어부에 통보해 주며(스텝 S1), 이에 제어부는 해당 키 입력부로부터 키 입력 감지를 통보받아 이에 해당하는 숫자버튼의 키 입력값을 확인하며, 도 4에 도시된 바와 같이 메모리부에 설정되어 있는 해당 숫자버튼의 키 입력값에 대응하는 트라이브 검색 순서에 따라 검색할 트라이브를 차례로 선택하는데, 먼저 해당 키 입력값에 대응하는 숫자 트라이브를 메모리부에서 선택하게 된다(스텝 S2).
그리고, 상기 선택한 숫자 트라이브의 시작 문자(즉, 숫자 및 특수 문자)를 검색 문자열로 하여 상기 문자열 분류에 따라 상기 선택한 숫자 트라이브에 포함된 문자열을 선형 검색 방법에 따라 차례로 검색하여 상기 숫자버튼의 키 입력값과 일치하는 문자로 시작하는 문자열을 찾으면서(스텝 S3), 해당 숫자 트라이브에 포함된 모든 문자열에 대한 검색이 종료되는지를 확인하게 된다(스텝 S4). 예를 들어, 키 입력값이 '5'인 경우, 숫자 트라이브(NUM_TRIBE)에 포함된 문자열들 중 '5'로 시작하는 문자열인 '50번지'를 검색하게 된다.
이때, 상기 선택한 숫자 트라이브에 대한 검색이 종료되는 경우, 도 4와 같은 트라이브 검색 순서에 따라 상기 입력된 숫자버튼의 키 입력값에 대응하는 다음 트라이브를 선택하기 위해서, 상기 입력된 숫자버튼에 영문이 할당되어 있는지를 확인하게 된다(스텝 S5).
만약, 상기 입력된 숫자버튼에 영문이 할당되어 있는 경우, 먼저 상기 입력된 숫자버튼의 키 입력값에 대응하는 영문 대문자 트라이브를 선택한 후(스텝 S6), 해당 선택한 영문 대문자 트라이브의 시작 문자(즉, 영문 대문자)를 검색 문자열로 하여 상기 문자열 분류에 따라 해당 영문 대문자 트라이브에 포함된 각 문자열을 선형 검색 방법에 따라 차례로 검색하여 상기 숫자버튼의 키 입력값과 일치하는 문자로 시작하는 문자열을 찾으면서(스텝 S7), 해당 영문 대문자 트라이브에 포함된 모든 문자열에 대한 검색이 종료되는지를 확인하게 된다(스텝 S8). 예를 들어, 키 입력값이 '5'인 경우, 영문 대문자 트라이브(JKL_LARGE_TRIBE)에 포함된 문자열들 중 'J', 'K', 'L'로 시작하는 문자열인 'John Tailor', 'LG'를 검색하게 된다. 또한, 키 입력값이 '1'인 경우, 영문에 대한 트라이브가 메모리부에 설정되어 있지 않으므로 해당 영문 트라이브에 대한 검색 수행을 바로 종료한 후에 스텝 S12로 진행한다.
그리고, 해당 영문 대문자 트라이브에 대한 검색이 종료된 것으로 확인되면, 도 4와 같은 트라이브 검색 순서에 따라 상기 입력된 숫자버튼의 키 입력값에 대응하는 다음 트라이브인 영문 소문자 트라이브를 선택한 후(스텝 S9), 해당 선택한 영문 소문자 트라이브의 시작 문자(즉, 영문 소문자)를 검색 문자열로 하여 상기 문자열 분류에 따라 해당 영문 소문자 트라이브에 포함된 각 문자열에 대한 검색을 수행하여 상기 숫자버튼의 키 입력값과 일치하는 문자로 시작하는 문자열을 찾으면서(스텝 S10), 해당 영문 소문자 트라이브에 포함된 모든 문자열에 대한 검색이 종료되는지를 확인하게 된다(스텝 S11). 예를 들어, 키 입력값이 '5'인 경우, 영문 소문자 트라이브(JKL_SMALL_TRIBE)에 포함된 문자열들 중 'j', 'k', 'l'로 시작하는 문자열들이 메모리부에 설정되어 있지 않으므로 해당 영문 소문자 트라이브에 대한 검색 수행을 바로 종료한 후에 스텝 S12로 진행한다.
이때, 해당 영문 소문자 트라이브에 대한 검색이 종료된 것으로 확인되는 경우 또는 스텝 S5에서 입력된 숫자버튼에 영문이 할당되어 있지 않은 경우, 도 4와 같은 트라이브 검색 순서에 따라 상기 입력된 숫자버튼에 대응하는 다음 트라이브를 선택하기 위해서, 상기 입력된 숫자버튼에 한글이 할당되어 있는지를 확인하게 된다(스텝 S12).
만약, 상기 입력된 숫자버튼에 한글이 할당되어 있는 경우, 해당 숫자버튼의 키 입력값에 대응하는 한글 트라이브(즉, 자음 트라이브 및 한글 트라이브)를 선택한 후(스텝 S13), 해당 선택한 한글 트라이브의 시작 문자(즉, 한글 자음 및 한글)를 검색 문자열로 하여 상기 문자열 분류에 따라 해당 한글 트라이브에 포함된 각 문자열을 선형 검색 방법에 따라 차례로 검색하여 상기 숫자버튼의 키 입력값과 일치하는 문자로 시작하는 문자열을 찾으면서(스텝 S14), 해당 한글 트라이브에 포함된 모든 문자열에 대한 검색이 종료되는지를 확인하게 된다(스텝 S15). 예를 들어, 키 입력값이 '5'인 경우, 한글 자음 트라이브(SE_TRIBE) 및 한글 트라이브(MA_TRIBE, FA_TRIBE)에 포함된 문자열들 중 'ㅁ', 'ㅍ'으로 시작하는 문자열인 '문철수', '표은진'을 검색하게 된다.
이후, 해당 한글 트라이브에 대한 검색이 종료된 것으로 확인되는 경우 또는 스텝 S12에서 입력된 숫자버튼에 한글이 할당되어 있지 않은 경우, 상기 입력된 숫자버튼의 키 입력값에 대응하는 각 트라이브에 대한 검색을 종료했으므로, 제어부는 현재까지 각 트라이브로부터 검색한 결과를 디스플레이한 후(스텝 S16), 해당 문자열 검색을 종료하기 위한 소정 버튼이 입력되는지를 확인하여(스텝 S17), 검색 종료를 위한 버튼이 입력되는 경우에 해당 문자열 검색 동작을 종료하게 된다. 예를 들어, 한 번의 키 입력값이 '5'인 경우, 검색 결과는 '50번지', 'John Tailor', 'LG', '문철수', '표은진'이 된다. 또한, 검색 종료를 위한 버튼이 입력되지 않고 다른 숫자버튼이 입력되는 경우에 스텝 S1로 귀환하여 반복 동작을 수행함으로써, 첫 번째 입력된 숫자버튼과 다음 입력된 숫자버튼에 할당된 문자열들을 모두 포함하는 검색 결과를 디스플레이하게 된다.
상술한 바와 같이, 본 발명에서는 통신 시스템에 구비된 키패드의 각 숫자버튼에 대응하는 숫자 트라이브를 기본으로 하여 메모리부에 저장된 숫자로 시작되는 문자열을 차례로 검색한 후, 해당 숫자버튼에 할당된 영문 및 한글의 유무에 따라 해당 영문 또는 한글로 시작되는 문자열을 각 영문 대/소문자 트라이브 및 한글 트라이브로부터 순차적으로 검색함으로써, 해당 시스템의 문자열 저장 구조와 키패드의 배열 구조에 따라 효율적인 문자열 검색을 수행할 수 있게 된다.
또한, 본 발명에 따른 실시 예는 상술한 것으로 한정되지 않고, 본 발명과 관련하여 통상의 지식을 가진 자에게 자명한 범위 내에서 여러 가지의 대안, 수정 및 변경하여 실시할 수 있다.
특히, 각 숫자버튼에 할당된 영문 및 한글의 배열 구조에 따라 트라이브의 분류를 달리하여 실시할 수 있게 된다.
이상과 같이, 본 발명은 통신 시스템의 메모리부 내에 코드값의 크기 순으로 저장된 각 문자열들을 시스템의 키패드 배열 구조에 따라 다수 개의 트라이브로 분류한 후, 문자열 검색을 위한 소정의 숫자버튼 입력 시에 해당 숫자버튼에 할당된 숫자, 영문 및 한글의 유무에 따라 검색할 트라이브들을 순차적으로 선택하여 각 트라이브에 포함된 문자열들을 선형 검색 방법에 따라 검색함으로써, 해당 통신 시스템의 메모리에 저장된 많은 양의 문자열들 중에 찾고자 하는 문자열을 찾는데 소요되는 시간을 단축할 수 있게 된다.

Claims (4)

  1. 사용자에 의해 눌러진 키패드 자판의 키값을 제어부에서 인식하여 해당 키값에 대응하는 특수 문자, 영문 또는 한글을 메모리부로부터 판독할 수 있도록 해당 자판의 숫자버튼에 특수 문자, 영문 또는 한글을 할당시킨 자판 배열 구조를 가지는 통신 시스템에 있어서,
    문자열들이 메모리부에 저장된 구조와 상기 자판 배열 구조를 고려하여 각 문자열들을 다수 개의 트라이브들로 분류하고 상기 자판 배열 구조에 따라 숫자버튼의 입력 키값에 대응하는 트라이브 검색 순서를 정하는 과정과; 문자열 검색을 위한 숫자버튼의 입력을 확인하여 해당 숫자버튼의 입력 키값에 대응하는 트라이브 검색 순서에 따라 검색할 트라이브를 차례로 선택하여 해당 숫자버튼의 입력 키값과 일치하는 문자로 시작하는 문자열을 찾기 위해 선형 검색 방식으로 해당 선택한 트라이브 내의 모든 문자열을 검색하는 과정을 포함하는 것을 특징으로 하는 통신 시스템에서의 문자열 검색 방법.
  2. 제 1항에 있어서,
    상기 트라이브는 숫자, 영문 대소문자 및 기호를 포함하는 아스키 코드에 대한 트라이브와, 한글을 포함하는 한글 코드에 대한 트라이브로 분류되며, 해당 아스키 코드에 대한 트라이브는 각 숫자버튼의 키값에 대응하는 숫자에 대한 숫자 트라이브와, 각 숫자버튼의 키값에 대응하는 영문 대문자에 대한 다수 개의 트라이브와, 각 숫자버튼의 키값에 대응하는 영문 소문자에 대한 다수 개의 트라이브로 분류되며, 해당 한글 코드에 대한 트라이브는 각 숫자버튼의 키값에 대응하는 한글 자음에 대한 트라이브와, 각 숫자버튼의 키값에 대응하는 한글에 대한 다수 개의 트라이브로 분류되어 이루어진 것을 특징으로 하는 통신 시스템에서의 문자열 검색 방법.
  3. 제 1항에 있어서,
    상기 문자열 검색 과정은 문자열 검색을 위한 숫자버튼의 입력을 확인하여 해당 숫자버튼의 입력 키값에 대응하는 숫자 트라이브를 선택하는 단계와; 상기 숫자 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 상기 숫자 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하는 단계와; 상기 숫자 트라이브에 대한 검색이 종료된 경우에 상기 숫자버튼의 입력 키값에 대응하는 트라이브 검색 순서에 따라 다음 트라이브를 선택하는 단계와; 상기 선택한 다음 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 해당 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하여 그 결과를 디스플레이하는 단계를 포함하는 것을 특징으로 하는 통신 시스템에서의 문자열 검색 방법.
  4. 제 3항에 있어서,
    상기 다음 트라이브 선택 단계는 상기 입력된 숫자버튼에 영문이 할당되어 있는지를 확인하여 해당 숫자버튼의 입력 키값에 대응하는 영문 대문자 트라이브를 선택하는 단계와; 상기 영문 대문자 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 상기 영문 대문자 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하는 단계와; 상기 영문 대문자 트라이브에 대한 검색이 종료된 경우에 상기 숫자버튼의 입력 키값에 대응하는 영문 소문자 트라이브를 선택하는 단계와; 상기 영문 소문자 트라이브의 시작 문자를 검색 문자열로 하여 상기 문자열 분류에 따라 상기 영문 소문자 트라이브에 포함된 문자열을 선형 검색 방식으로 차례로 검색하는 단계와; 상기 영문 소문자 트라이브에 대한 검색이 종료된 경우나 상기 입력된 숫자버튼에 영문이 할당되어 있지 않은 경우에 해당 숫자버튼에 한글이 할당되어 있는지를 확인하는 단계와; 상기 숫자버튼에 한글이 할당되어 있는 경우에 상기 숫자버튼의 입력 키값에 대응하는 한글 트라이브를 선택하는 단계를 더 포함하는 것을 특징으로 하는 통신 시스템에서의 문자열 검색 방법.
KR1019990033080A 1999-08-12 1999-08-12 통신 시스템에서의 문자열 검색 방법 KR100358445B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990033080A KR100358445B1 (ko) 1999-08-12 1999-08-12 통신 시스템에서의 문자열 검색 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990033080A KR100358445B1 (ko) 1999-08-12 1999-08-12 통신 시스템에서의 문자열 검색 방법

Publications (2)

Publication Number Publication Date
KR20010017519A KR20010017519A (ko) 2001-03-05
KR100358445B1 true KR100358445B1 (ko) 2002-10-25

Family

ID=19606919

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990033080A KR100358445B1 (ko) 1999-08-12 1999-08-12 통신 시스템에서의 문자열 검색 방법

Country Status (1)

Country Link
KR (1) KR100358445B1 (ko)

Also Published As

Publication number Publication date
KR20010017519A (ko) 2001-03-05

Similar Documents

Publication Publication Date Title
US8381137B2 (en) Explicit character filtering of ambiguous text entry
US5952942A (en) Method and device for input of text messages from a keypad
CN100361052C (zh) 在电子装置的用户界面中输入单词的方法及装置
KR100751903B1 (ko) 이동통신단말기의 데이터 저장 및 검색 방법
KR101288653B1 (ko) 휴대 전화
JP4152981B2 (ja) 移動通信端末機の定型句登録及び入力方法
JP4213570B2 (ja) 文字入力方法、文字入力装置およびプログラム
JP2009532773A (ja) キーパッドの複数文字キーを使用した英数字データ入力装置および方法
KR100358445B1 (ko) 통신 시스템에서의 문자열 검색 방법
JP5320925B2 (ja) 情報検索方法、情報検索装置及び情報検索プログラム
KR0154150B1 (ko) 통신단말기의 한글문자열 입력방법
JP2012038151A (ja) 漢字検索システム、漢字検索方法及びプログラム
JP2008117310A (ja) 辞書検索装置および辞書検索処理プログラム
KR100581827B1 (ko) 이동 통신 단말기의 전화 번호 검색 방법
WO2005020454A1 (en) Method of inputting character in mobile terminal
KR100655552B1 (ko) 문자 패턴을 이용한 단말기의 문자 입력방법
KR101063601B1 (ko) 이동통신 단말기 및 그의 전화번호 검색 방법
CN101103347B (zh) 对手持电子设备的有歧义输入进行歧义消解的装置和方法
KR100608786B1 (ko) 이동 통신 단말기에서의 만능 문자를 이용한 전화번호부검색 방법
JP4227891B2 (ja) キーボードを用いた文書入力システムと該システムを備えた電子機器
KR100755942B1 (ko) 데이터 처리 방법
KR100652635B1 (ko) 이동통신 단말기의 전화번호부 검색 방법
JP2007241681A (ja) 声調及び筆画によって入力文字を決定する携帯端末及びプログラム
JP2002328767A (ja) 情報機器、情報機器に搭載された検索対象項目の検索方法、および、情報機器に搭載された検索対象項目の検索プログラム
JP2010003181A (ja) 電子機器、情報検索方法、制御プログラム、および、記録媒体

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120926

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20130924

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20140924

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20150924

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee