В PHP, какой самый элегантный способ получить полный список (массив строк) всех Unicode пробельных символов, закодированных в utf8
Мне нужно, чтобы генерировать тестовые данные.
В PHP, какой самый элегантный способ получить полный список (массив строк) всех Unicode пробельных символов, закодированных в utf8
Мне нужно, чтобы генерировать тестовые данные.
Это электронное письмо содержит список всех пробельных символов Unicode, кодированных в UTF-8, UTF-16 и HTML.
изменить
Первоначально ответил 9 февраля '10 (!). Действительно, ребята, если информация устарела, вы можете добавить свой собственный ответ, а не жаловаться. Просто google для URL, упомянутого в моем ответе, и заработайте некоторую репутацию:
Почта была заархивирована здесь (заняла секунды), а таблица пробелов даже упоминается во введении
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",
);
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" на значение шестнадцатеричного UTF-16, которое вы ищете).
Это также дает пару дополнительных символов, которые @devio отлично пропустили.
Спустя годы этот вопрос по-прежнему имеет лучшие результаты в 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