Documentation
¶
Overview ¶
Package dkssud는 QWERTY 키보드 입력과 한글 문자 간의 변환을 제공하는 함수들을 포함하고 있습니다.
이 패키지는 QWERTY 키보드 레이아웃을 기반으로 한국어 텍스트를 해석하거나 생성해야 하는 애플리케이션에 유용합니다.
이 패키지에는 두 가지 주요 함수가 포함되어 있습니다:
- QwertyToHangul: QWERTY 키보드 입력 문자열을 해당하는 한글 문자로 변환합니다.
- HangulToQwerty: 한글 문자를 해당하는 QWERTY 키보드 입력으로 변환합니다.
사용 예:
package main
import (
"fmt"
"github.com/Alfex4936/dkssud"
)
func main() {
// QWERTY를 한글로 변환
hangul := dkssud.QwertyToHangul("rkskekfk")
fmt.Println(hangul) // 출력: "가나다라"
// 한글을 QWERTY로 변환
qwerty := dkssud.HangulToQwerty("가나다라")
fmt.Println(qwerty) // 출력: "rkskekfk"
}
이 패키지는 한국어 텍스트 처리에서 일반적으로 발생하는 상황을 처리하도록 설계되었으며, 간단하고 사용하기 쉽게 만들어졌습니다.
Index ¶
Constants ¶
const ( T = 0b00010000 M = 0b00000100 B = 0b00000001 TM = T + M MM = M + M MB = M + B BB = B + B TMM = T + M + M TMB = T + M + B TMMB = T + M + M + B TMBB = T + M + B + B TMMBB = T + M + M + B + B )
Constants for bitmasks
Variables ¶
This section is empty.
Functions ¶
func HangulToQwerty ¶
HangulToQwerty converts a string of Hangul characters into their corresponding QWERTY keyboard inputs. This function reverses the process performed by QwertyToHangul.
Example usage:
converted := HangulToQwerty("가나다라")
fmt.Println(converted) // Output: "rkskekfk"
converted = HangulToQwerty("하 ㅋㅋㅋㅋ 메롱")
fmt.Println(converted) // Output: "gk zzzz apfhd"
Parameters:
- input: A string containing Hangul characters.
Returns:
- A string representing the corresponding QWERTY keyboard inputs.
func IsAttachAvailable ¶ added in v1.0.3
IsAttachAvailable 함수는 두 개의 문자(i, l)가 한국어 조합 규칙에 따라 붙일 수 있는지를 확인합니다. 이 함수는 주로 자음과 모음, 또는 자음과 자음 간의 결합 가능 여부를 판단하는 데 사용됩니다.
이 함수는 다음과 같은 경우에 특정 값을 반환합니다: - 2: 첫 번째 문자가 자음(초성)이고, 두 번째 문자가 모음(중성)인 경우 - 3: 첫 번째와 두 번째 문자가 모두 모음(중성)이며, 이들이 합쳐져 이중 모음(복모음)을 구성할 수 있는 경우 - 4: 첫 번째 문자가 모음(중성)이고, 두 번째 문자가 자음(종성)인 경우 - 5: 두 문자가 결합하여 이중 자음(겹받침)을 구성할 수 있는 경우 - 0: 위의 경우에 해당하지 않는 경우 (결합 불가)
예시:
result := isAttachAvailable('r', 'k')
fmt.Println(result) // 출력: 2 (자 + 모)
result = isAttachAvailable('k', 'o')
fmt.Println(result) // 출력: 0 (모 + 모, 결합 불가)
result = isAttachAvailable('k', 'r')
fmt.Println(result) // 출력: 4 (모 + 자)
Parameters: - i: 첫 번째 문자 (byte 형식) - l: 두 번째 문자 (byte 형식)
Returns: - int: 문자의 결합 가능 여부를 나타내는 값. 0은 결합 불가, 2는 자 + 모, 3은 복모음, 4는 모 + 자, 5는 겹받침을 의미합니다.
func IsQwertyHangul ¶ added in v1.0.3
IsQwertyHangul 함수는 입력된 문자열이 QWERTY 키보드에서 한글을 입력한 것으로 보이는지를 확인합니다.
!주의사항: 이 함수는 ASCII 문자로 이루어진 영어 문장도 QWERTY 한글로 잘못 인식할 수 있습니다. 예를 들어, "hello there" 같은 영어 문장은 QWERTY 한글로 인식됩니다. 이 함수는 주로 QWERTY 한글 입력이 예상되는 상황에서 사용되는 것이 좋습니다.
이 함수는 다음과 같은 경우에 true를 반환합니다: - 문자열이 한글이 아닌 ASCII 문자(영문자 또는 숫자)로만 구성되어 있을 때 - 문자열이 영문자와 숫자의 조합으로 이루어진 경우
이 함수는 다음과 같은 경우에 false를 반환합니다: - 문자열에 한글 문자가 포함된 경우 - 문자열에 ASCII 범위를 벗어나는 문자가 포함된 경우 (예: 특수 문자, 다른 언어의 문자 등) - 문자열이 오직 숫자로만 이루어진 경우
예시:
fmt.Println(IsQwertyHangul("경기도")) // false - 한글 포함
fmt.Println(IsQwertyHangul("rudrleh")) // true - QWERTY로 입력된 한글
fmt.Println(IsQwertyHangul("123")) // false - 숫자만 포함
fmt.Println(IsQwertyHangul("1경기")) // false - 한글 포함
fmt.Println(IsQwertyHangul("123abbabb")) // true - QWERTY로 입력된 한글과 숫자 조합
fmt.Println(IsQwertyHangul("가낟ㄱㄴㅁㄱ닥ㄴㄷ")) // false - 한글 및 한글 자모 포함
Parameters: - input: 검사할 문자열
Returns: - 문자열이 QWERTY 키보드로 입력된 한글일 가능성이 있으면 true, 그렇지 않으면 false를 반환합니다.
func QwertyToHangul ¶
QwertyToHangul converts a string of QWERTY keyboard inputs to their corresponding Hangul characters. It supports the mapping of Korean characters typed using the QWERTY keyboard layout.
Example usage:
converted := QwertyToHangul("rkskekfk")
fmt.Println(converted) // Output: "가나다라"
converted = QwertyToHangul("gk zzzz apfhd")
fmt.Println(converted) // Output: "하 ㅋㅋㅋㅋ 메롱"
converted = QwertyToHangul("123")
fmt.Println(converted) // Output: "123" (Numbers remain unchanged)
Parameters:
- input: A string containing QWERTY keyboard inputs.
Returns:
- A string containing the corresponding Hangul characters.
Types ¶
This section is empty.