2010-02-09 1 views
9

В PHP, какой самый элегантный способ получить полный список (массив строк) всего Unicode whitespace characters, закодированный в utf8?Самый простой способ получить полный список всех пробельных символов UTF-8 в PHP

Мне нужно, чтобы генерировать тестовые данные.

+1

Если вы хотите, чтобы заменить в строку, посмотрите в '\ р {Z}' в регулярных выражениях: http://www.regular-expressions.info/unicode.html –

ответ

9

This email содержит список всех пробельных символов Unicode, кодированных в UTF-8, UTF-16 и HTML.

редактировать

Первоначально ответил 9 Фев '10 (!). Действительно, ребята, если информация устарела, вы можете добавить свой собственный ответ, а не жаловаться. Просто Google для URL, указанного в моем ответе, и заработать репутацию:

Почта была заархивирована here (у меня ушли секунды), а пробельная таблица даже упомянута во введении

static $whitespace = array(
    "SPACE" => "\x20", 
    "NO-BREAK SPACE" => "\xc2\xa0", 
    "OGHAM SPACE MARK" => "\xe1\x9a\x80", 
    "EN QUAD" => "\xe2\x80\x80", 
    "EM QUAD" => "\xe2\x80\x81", 
    "EN SPACE" => "\xe2\x80\x82", 
    "EM SPACE" => "\xe2\x80\x83", 
    "THREE-PER-EM SPACE" => "\xe2\x80\x84", 
    "FOUR-PER-EM SPACE" => "\xe2\x80\x85", 
    "SIX-PER-EM SPACE" => "\xe2\x80\x86", 
    "FIGURE SPACE" => "\xe2\x80\x87", 
    "PUNCTUATION SPACE" => "\xe2\x80\x88", 
    "THIN SPACE" => "\xe2\x80\x89", 
    "HAIR SPACE" => "\xe2\x80\x8a", 
    "ZERO WIDTH SPACE" => "\xe2\x80\x8b", 
    "NARROW NO-BREAK SPACE" => "\xe2\x80\xaf", 
    "MEDIUM MATHEMATICAL SPACE" => "\xe2\x81\x9f", 
    "IDEOGRAPHIC SPACE" => "\xe3\x80\x80", 
); 
+0

о! Его недостающие два я ищу. x2028, разделитель строк и граница абзаца x2029 – ppostma1

+0

Загрузите сообщение в другое место. Эта ссылка не работает –

+2

Неработающая ссылка. Вот почему вы должны ** всегда ** копировать информацию из ссылки, делая ответ самодостаточным и не уязвимым для неработающих ссылок. – cprcrack

3

http://en.wikipedia.org/wiki/Space_%28punctuation%29#Spaces_in_Unicode

К сожалению, он не дает UTF-8, но у него есть символ на веб-странице, поэтому вы можете вырезать и вставлять его в свой редактор (если он сохраняет в UTF-8). Альтернативно, http://www.fileformat.info/info/unicode/char/180E/index.htm дает UTF-8 (замените «180E» на значение hex UTF-16, которое вы ищете).

Это также дает пару дополнительных символов, которые отличные ответы @ devio.

3

Спустя годы этот вопрос по-прежнему имеет лучшие результаты в Google при поиске символов в формате unicode. Ответ devio велик, но неполный. На момент написания (октябрь 2017) В Википедии есть список пробельных символов здесь: https://en.wikipedia.org/wiki/Whitespace_character

Этот список содержит задающий 25 кодовых точек, в то время как в настоящее время списки принятых ответов 18. В том числе семи других кодовых точек, список:

U+0009 character tabulation 
U+000A line feed 
U+000B line tabulation 
U+000C form feed 
U+000D carriage return 
U+0020 space 
U+0085 next line 
U+00A0 no-break space 
U+1680 ogham space mark 
U+180E mongolian vowel separator 
U+2000 en quad 
U+2001 em quad 
U+2002 en space 
U+2003 em space 
U+2004 three-per-em space 
U+2005 four-per-em space 
U+2006 six-per-em space 
U+2007 figure space 
U+2008 punctuation space 
U+2009 thin space 
U+200A hair space 
U+200B zero width space 
U+200C zero width non-joiner 
U+200D zero width joiner 
U+2028 line separator 
U+2029 paragraph separator 
U+202F narrow no-break space 
U+205F medium mathematical space 
U+2060 word joiner 
U+3000 ideographic space 
U+FEFF zero width non-breaking space