#korean #characters #syllable #combine #check #hangul #complete

rustkorean

RustKorean 是一个用于处理韩文字符的 Rust 库。它提供了检查字符是否为韩文、分类韩文字符、验证字符是否为韩文书写系统中的声母(choseong)、韵母(jungseong)或尾音(jongseong),将音节字符组合成完整的韩文字节,以及检查字符的音节类型等功能。

4 个稳定版本

1.1.0 2024年5月4日
1.0.2 2024年5月3日

#242 in 文本处理

24 每月下载量

MIT 许可证

28KB
206

RustKorean

RustKorean 是一个用于处理韩文字符的 Rust 库。它提供了检查字符是否为韩文、分类韩文字符、验证字符是否为韩文书写系统中的声母(choseong)、韵母(jungseong)或尾音(jongseong),将音节字符组合成完整的韩文字节,以及检查字符的音节类型等功能。


特性

  • 检查字符是否为韩文 (check_korean)
  • 分类韩文字符 (classify_korean)
  • 检查声母 (Choseong) (first_letter_check)
  • 检查韵母 (Jungseong) (middle_letter_check)
  • 检查尾音 (Jongseong) (last_letter_check)
  • 将音节字符组合成韩文 (compose_korean)
  • 检查字符的音节类型 (syllable_check)
  • 在适用的情况下将单个韩文字符组合成双辅音 (create_double_consonant)

用法

首先,在您的 Cargo.toml 文件中将 rustkorean 添加为依赖项。

[dependencies]
rustkorean = "1.0.2"

检查字符是否为韩文

检查字符是否为韩文的示例。

extern crate rustkorean;
use rustkorean::check_korean;

fn main() {
    let korean_char = '';
    let non_korean_char = 'A';

    println!("Is '{}' a Korean character? {}", korean_char, check_korean(korean_char));
    println!("Is '{}' a Korean character? {}", non_korean_char, check_korean(non_korean_char));
}

检查音节类型

检查字符音节类型的示例。

extern crate rustkorean;
use rustkorean::syllable_check;

fn main() {
    let examples = vec!['', '', '', '1', 'a', ''];
    for &example in &examples {
        let syllable_type = syllable_check(example);
        println!("{:?} is {:?}", example, syllable_type);
    }
}

检查声母、韵母和尾音

验证字符是否为声母、韵母或尾音的示例。

extern crate rustkorean;
use rustkorean::{first_letter_check, middle_letter_check, last_letter_check};

fn main() {
    let first_letter = '';
    let middle_letter = '';
    let last_letter = '';
    let not_korean_letter = 'A';

    if first_letter_check(first_letter) {
        println!("'{}' is a first letter.", first_letter);
    }

    if middle_letter_check(middle_letter) {
        println!("'{}' is a middle letter.", middle_letter);
    }

    if last_letter_check(last_letter) {
        println!("'{}' is a last letter.", last_letter);
    }

    if !first_letter_check(not_korean_letter) && !middle_letter_check(not_korean_letter) && !last_letter_check(not_korean_letter) {
        println!("'{}' is not a Korean letter.", not_korean_letter);
    }
}

将音节字符组合成韩文

将音节字符组合成完整的韩文字节的示例。

extern crate rustkorean;
use rustkorean::compose_korean;

fn main() {
    let chars = "ㅇㅏㄴㄴㅕㅇㅎㅏㅅㅔㅇㅛ".chars().collect::<Vec<char>>();
    let composed_string = compose_korean(chars);
    println!("{}", composed_string); // This should print "안녕하세요".
}

将分隔的双辅音组合成完整的韩文字符

此功能将具有分隔双辅音的输入组合成完整的韩文字符。

它与 compose_korean 函数配合得很好。

请参阅 korean_compose_example_2.rs 以获取示例。

extern crate rustkorean;
use rustkorean::create_double_consonant;

fn main() {
    let test_cases = vec![
        vec!['', '', '', '', '', ''],
        vec!['', '', '', '', '', '', '', '']
    ];

    for case in test_cases {
        let result = create_double_consonant(case);
        println!("Result: {:?}", result.iter().collect::<String>());
        // This code will output
        // Result: "ㄳㄵㅀ"
        // Result: "ㄺㄻㄼㄽ"
    }
}

本节描述了如何处理包含分隔双辅音的输入,并将它们组合成完整的韩文字节,从而增强了 compose_korean 函数的功能。

贡献

如果您想为此项目做出贡献,请提交拉取请求。如果您发现任何错误或提出功能请求,请打开一个问题。


韩国语说明 RustKorean

RustKorean 是用于韩文处理的 Rust 库。它提供检查韩文是否正确、韩文分类、确认初声/中声/韵尾、通过组合字母来形成完整韩文、检查字符的音节类型等功能。

功能

  • 韩文字符检查 (check_korean)
  • 韩文字符分类 (classify_korean)
  • 初声确认 (first_letter_check)
  • 中声确认 (middle_letter_check)
  • 韵尾确认 (last_letter_check)
  • 通过组合字母来创建韩文 (compose_korean)
  • 检查字符的音节类型 (syllable_check)
  • 通过输入韩文字母组合可能的叠韵 (create_double_consonant)

使用方法

首先,在 Cargo.toml 文件中将 rustkorean 添加为依赖。

[dependencies]
rustkorean = "1.0.2"

韩文字符检查

这是检查字符是否为韩文的示例。

extern crate rustkorean;
use rustkorean::check_korean;

fn main() {
    let korean_char = '';
    let non_korean_char = 'A';

    println!("'{}'는 한글 문자인가? {}", korean_char, check_korean(korean_char));
    println!("'{}'는 한글 문자인가? {}", non_korean_char, check_korean(non_korean_char));
}

检查字符的音节类型

这是检查字符音节类型的示例。

extern crate rustkorean;
use rustkorean::syllable_check;

fn main() {
    let examples = vec!['', '', '', '1', 'a', ''];
    for &example in &examples {
        let syllable_type = syllable_check(example);
        println!("{:?}{:?} 유형입니다.", example, syllable_type);
    }
}

初声/中声/韵尾确认

这是检查初声、中声、韵尾是否存在的示例。

extern crate rustkorean;
use rustkorean::{first_letter_check, middle_letter_check, last_letter_check};

fn main() {
    let first_letter = '';
    let middle_letter = '';
    let last_letter = '';
    let not_korean_letter = 'A';

    if first_letter_check(first_letter) {
        println!("'{}'는 초성입니다.", first_letter);
    }

    if middle_letter_check(middle_letter) {
        println!("'{}'는 중성입니다.", middle_letter);
    }

    if last_letter_check(last_letter) {
        println!("'{}'는 종성입니다.", last_letter);
    }

    if !first_letter_check(not_korean_letter) && !middle_letter_check(not_korean_letter) && !last_letter_check(not_korean_letter) {
        println!("'{}'는 한글 문자가 아닙니다.", not_korean_letter);
    }
}

通过组合字母来创建韩文

这是通过组合字母来创建完整韩文的示例。

extern crate rustkorean;
use rustkorean::compose_korean;

fn main() {
    let chars = "ㅇㅏㄴㄴㅕㅇㅎㅏㅅㅔㅇㅛ".chars().collect::<Vec<char>>();
    let composed_string = compose_korean(chars);
    println!("{}", composed_string); // 이 코드는 "안녕하세요"를 출력합니다.
}

通过组合分离的叠韵来创建韩文

这是通过组合分离的叠韵输入来创建完整韩文的示例。

建议与 compose_korean 函数一起使用。

请参阅 korean_compose_example_2.rs

extern crate rustkorean;
use rustkorean::create_double_consonant;

fn main() {
    let test_cases = vec![
        vec!['', '', '', '', '', ''],
        vec!['', '', '', '', '', '', '', '']
    ];

    for case in test_cases {
        let result = create_double_consonant(case);
        println!("Result: {:?}", result.iter().collect::<String>());
        // 이 코드는
        // Result: "ㄳㄵㅀ"
        // Result: "ㄺㄻㄼㄽ"
        // 을 출력합니다

    }
}

贡献

如果您想为该项目做出贡献,请接受合并请求。如果您发现错误或有功能请求,请创建问题。

无运行时依赖