[−][src]Struct kanaria::string::UCSStr
Methods
impl UCSStr<u16>
[src]
pub fn from_str_u16<U: ?Sized>(s: &U) -> Self where
U: AsRef<str>,
[src]
U: AsRef<str>,
変換対象の文字列からUCSStr構造体を生成します。
Examples
use kanaria::string::UCSStr; let result = UCSStr::from_str("こんにちは");
impl UCSStr<u32>
[src]
pub fn from_str<U: ?Sized>(s: &U) -> Self where
U: AsRef<str>,
[src]
U: AsRef<str>,
変換対象の文字列からUCSStr構造体を生成します。
Examples
use kanaria::string::UCSStr; let result = UCSStr::from_str("こんにちは");
impl<'a, T> UCSStr<T> where
T: UCSChar,
[src]
T: UCSChar,
pub fn from_slice(source: &'a [T]) -> Self
[src]
変換対象の文字列からUCSStr構造体を生成します。
Examples
use kanaria::string::UCSStr; let target = vec!['あ', 'い', 'う', 'え', 'お']; let result = UCSStr::from_slice(target.as_slice());
pub unsafe fn from_raw(source: *const T, len: usize) -> Self where
T: UCSChar,
[src]
T: UCSChar,
変換対象の文字列からUCSStr構造体を生成します。
Examples
use kanaria::string::UCSStr; let target = vec!['あ', 'い', 'う', 'え', 'お']; let result = unsafe { UCSStr::from_raw(target.as_ptr(), target.len()) };
pub fn upper_case(&mut self) -> &mut Self
[src]
文字列を大文字に変換するように設定します。
Examples
use kanaria::string::UCSStr; let target = vec!['a', 'b', 'c']; let result = UCSStr::from_slice(target.as_slice()) .upper_case() .to_vec(); assert_eq!(result, vec!['A', 'B', 'C']);
pub fn lower_case(&mut self) -> &mut Self
[src]
文字列を小文字に変換するように設定します。
Examples
use kanaria::string::UCSStr; let target = vec!['A', 'B', 'C']; let result = UCSStr::from_slice(target.as_slice()) .lower_case() .to_vec(); assert_eq!(result, vec!['a', 'b', 'c']);
pub fn hiragana(&mut self) -> &mut Self
[src]
文字列をひらがなに変換するように設定します。
Examples
use kanaria::string::UCSStr; let target = vec!['ア', 'イ', 'ウ', 'エ', 'オ']; let result = UCSStr::from_slice(target.as_slice()) .hiragana() .to_vec(); assert_eq!(result, vec!['あ', 'い', 'う', 'え', 'お']);
pub fn katakana(&mut self) -> &mut Self
[src]
文字列を全角カタカナに変換するように設定します。
Examples
use kanaria::string::UCSStr; let target = vec!['あ', 'い', 'う', 'え', 'お']; let result = UCSStr::from_slice(target.as_slice()) .katakana() .to_vec(); assert_eq!(result, vec!['ア', 'イ', 'ウ', 'エ', 'オ']);
pub fn wide(&mut self, width_convert_target: ConvertTarget) -> &mut Self
[src]
文字列を全角に変換するように設定します。 ConvertTargetフラグを利用することにより、全角に変換する文字種別を 数値、アルファベット、記号、カタカナのいずれか(複数指定可)に限定することが出来ます。
Examples
use kanaria::string::UCSStr; use kanaria::utils::ConvertTarget; let target = vec!['フ', 'シ', '゙', 'サ', 'ン']; let result = UCSStr::from_slice(target.as_slice()) .wide(ConvertTarget::ALL) .to_vec(); assert_eq!(result.len(), 4); assert_eq!(result, vec!['フ','ジ','サ','ン']); let target2 = vec!['1', '2', '3', 'a', 'b', 'c']; let result2 = UCSStr::from_slice(target2.as_slice()) .wide(ConvertTarget::NUMBER) .to_vec(); assert_eq!(result2, vec!['1', '2', '3', 'a', 'b', 'c']);
pub fn narrow(&mut self, width_convert_target: ConvertTarget) -> &mut Self
[src]
文字列を半角に変換するように設定します。 ConvertTargetフラグを利用することにより、全角に変換する文字種別を 数値、アルファベット、記号、カタカナのいずれか(複数指定可)に限定することが出来ます。
Examples
use kanaria::string::UCSStr; use kanaria::utils::ConvertTarget; let target = vec!['ガ', 'ギ', 'グ', 'ゲ', 'ゴ']; let result = UCSStr::from_slice(target.as_slice()) .narrow(ConvertTarget::ALL) .to_vec(); assert_eq!(result.len(), 10); assert_eq!(result, vec!['カ','゙','キ','゙','ク','゙','ケ','゙','コ','゙']); let target2 = vec!['1', '2', '3', 'A', 'B', 'C']; let result2 = UCSStr::from_slice(target2.as_slice()) .narrow(ConvertTarget::ALPHABET) .to_vec(); assert_eq!(result2, vec!['1', '2', '3', 'A', 'B', 'C']);
pub fn none(&mut self) -> &mut Self
[src]
文字列を変換せず、そのままとするように設定します。
Examples
use kanaria::string::UCSStr; let target = vec!['あ', 'い', 'う', 'え', 'お']; let result1 = UCSStr::from_slice(target.as_slice()) .none() .to_vec(); assert_eq!(result1, vec!['あ', 'い', 'う', 'え', 'お']); // カタカナに変換後、何もしない設定なのでカタカナに変換された文字が出てくる let result2 = UCSStr::from_slice(target.as_slice()) .katakana() .none() .to_vec(); assert_eq!(result2, vec!['ア', 'イ', 'ウ', 'エ', 'オ']);
pub fn to_string(&self) -> String
[src]
文字列を変換し、Stringとして返却します。
Examples
use kanaria::string::UCSStr; let target = vec!['あ', 'い', 'う', 'え', 'お']; let result = UCSStr::from_slice(target.as_slice()) .katakana() .to_string(); assert_eq!(result.as_str(), "アイウエオ")
pub fn to_vec(&self) -> Vec<T>
[src]
文字列を変換し、Vecとして返却します。
Examples
use kanaria::string::UCSStr; let target = vec!['あ', 'い', 'う', 'え', 'お']; let result = UCSStr::from_slice(target.as_slice()) .katakana() .to_vec(); assert_eq!(result, vec!['ア', 'イ', 'ウ', 'エ', 'オ'])
pub fn convert(
src: &[T],
convert_type: ConvertType,
convert_target: ConvertTarget
) -> Vec<T> where
T: UCSChar,
[src]
src: &[T],
convert_type: ConvertType,
convert_target: ConvertTarget
) -> Vec<T> where
T: UCSChar,
文字列を変換し、Vecとして返却します。 convert_typeがWideまたはNarrowの場合、convert_targetフラグを利用することにより、変換する文字種別を 数値、アルファベット、記号、カタカナのいずれか(複数指定可)に限定することが出来ます。 WideまたはNarrow以外の場合、この設定値は無視されます。
Examples
use kanaria::string::UCSStr; use kanaria::string::ConvertType::Katakana; use kanaria::utils::ConvertTarget; use kanaria::string::ConvertType; let target = vec!['あ', 'い', 'う', 'え', 'お']; let result = UCSStr::convert(target.as_slice(), ConvertType::Katakana, ConvertTarget::ALL); assert_eq!(result, vec!['ア', 'イ', 'ウ', 'エ', 'オ'])
pub unsafe fn convert_raw(
src_ptr: *const T,
dst_ptr: *mut T,
src_len: usize,
convert_type: ConvertType,
convert_target: ConvertTarget
) -> usize where
T: UCSChar,
[src]
src_ptr: *const T,
dst_ptr: *mut T,
src_len: usize,
convert_type: ConvertType,
convert_target: ConvertTarget
) -> usize where
T: UCSChar,
文字列を変換し、Vecとして返却します。 convert_typeがWideまたはNarrowの場合、convert_targetフラグを利用することにより、変換する文字種別を 数値、アルファベット、記号、カタカナのいずれか(複数指定可)に限定することが出来ます。 WideまたはNarrow以外の場合、この設定値は無視されます。
Examples
use kanaria::string::UCSStr; use kanaria::string::ConvertType::Katakana; use kanaria::utils::ConvertTarget; let target = vec!['あ', 'い', 'う', 'え', 'お']; let mut result = Vec::with_capacity(target.len()); unsafe { result.set_len(target.len()); UCSStr::convert_raw(target.as_ptr(), result.as_mut_ptr(), target.len(), Katakana, ConvertTarget::ALL); } assert_eq!(result, vec!['ア', 'イ', 'ウ', 'エ', 'オ'])
Trait Implementations
impl<T> Clone for UCSStr<T> where
T: UCSChar,
[src]
T: UCSChar,
fn clone(&self) -> Self
[src]
fn clone_from(&mut self, source: &Self)
[src]
Auto Trait Implementations
impl<T> RefUnwindSafe for UCSStr<T> where
T: RefUnwindSafe,
T: RefUnwindSafe,
impl<T> Send for UCSStr<T> where
T: Send,
T: Send,
impl<T> Sync for UCSStr<T> where
T: Sync,
T: Sync,
impl<T> Unpin for UCSStr<T> where
T: Unpin,
T: Unpin,
impl<T> UnwindSafe for UCSStr<T> where
T: UnwindSafe,
T: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,