IntlCodePointBreakIterator クラス

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

はじめに

この break iterator は、UTF-8 のコードポイント間の境界を認識するものです。

クラス概要

class IntlCodePointBreakIterator extends IntlBreakIterator {
/* 継承した定数 */
public const int IntlBreakIterator::DONE;
/* メソッド */
public getLastCodePoint(): int
/* 継承したメソッド */
public static IntlBreakIterator::createCharacterInstance(?string $locale = null): ?IntlBreakIterator
public static IntlBreakIterator::createLineInstance(?string $locale = null): ?IntlBreakIterator
public static IntlBreakIterator::createSentenceInstance(?string $locale = null): ?IntlBreakIterator
public static IntlBreakIterator::createTitleInstance(?string $locale = null): ?IntlBreakIterator
public static IntlBreakIterator::createWordInstance(?string $locale = null): ?IntlBreakIterator
public IntlBreakIterator::following(int $offset): int
intl_get_error_code(): int
intl_get_error_message(): string
public IntlBreakIterator::getLocale(int $type): string|false
public IntlBreakIterator::getPartsIterator(string $type = IntlPartsIterator::KEY_SEQUENTIAL): IntlPartsIterator
public IntlBreakIterator::getText(): ?string
public IntlBreakIterator::isBoundary(int $offset): bool
public IntlBreakIterator::next(?int $offset = null): int
public IntlBreakIterator::preceding(int $offset): int
public IntlBreakIterator::setText(string $text): ?bool
}

目次

add a note

User Contributed Notes 1 note

up
0
Matt Kynx
1 month ago
An example of using this to find all the code points in a string that cannot be transliterated to Latin-ASCII:

<?php

$string
= "Народm, Intl gurus get paid €10000/hr 😁";

$latinAscii = Transliterator::create('NFC; Any-Latin; Latin-ASCII;');
$transliterated = $latinAscii->transliterate($string);

$codePoints = IntlBreakIterator::createCodePointInstance();
$codePoints->setText($transliterated);

foreach (
$codePoints->getPartsIterator() as $char) {
   
$ord = IntlChar::ord($char);
    if (
255 < $ord) {
        echo
IntlChar::charName($ord) . "\n";
    }
}
?>

Outputs:
EURO SIGN
GRINNING FACE WITH SMILING EYES
To Top