Программирование > Регулярные выражения

Вырезка текста

<< < (5/7) > >>

Phoinix:
mike
Вот только я не пойму, что при use locale он делает с пробелами?

Он вырезает текст с пробелами, но при этом оставляет вместо текста один пробел, при наличии в тексте нескольких подряд пробелов он заменяет их, опять же, на один?

NeoNox:
Пробелы они и африке пробелы(так же как табы и переводы строк) только черные. use locale влияет на выбор charmaps.

ondr:

--- Цитировать ---NeoNox:
Пробелы они и африке пробелы
--- Конец цитаты ---


Извините, но это не совсем так...
Например символ с ASCII кодом 160 (chr(160)) при кодировке cp1251 даст пробельный символ. И более того метасимвол \'\\s\' отловит этот символ как положенно. При других кодировках этого не происходит.

ps: Microsoft программы этот символ очень любят. (например Excel)

Yukko:

--- Цитировать ---ondr:
Извините, но это не совсем так...
--- Конец цитаты ---

Читаем ман по регам:
\\s Пропуск. в системах, ограничивающихся поддержкаой ASCII, часто эквивалентно [ \\f\\n\\r\\t\\v], В системах с подержкой Юникода также часто включает управлящий символ "следующей строки" U+0085, а иногда свойство  \\p{Z}

\\p{Z} — \\p{Separator} — символы, выполняющие функции разделителей, но не имеющие собственного визуального представления (разнообразные пробелы и т.д.)
\\p{Zs} — \\p{space separator} — различные типы пробелов (обычный пробел, наразрывный пробел, и пробелы фиксированной ширины)

Ман по РНР:
By default, a whitespace character is any character that the C library function isspace() recognizes, though it is possible to compile PCRE with alternative character type tables.
(Свободный перевод, извините за качество
По-умолчанию пробелом считается любой символ, который распознает библиотечная С-функция isspace(), хотя возможно скомпилировать PCRE с альтернативным набором символов)
На С не писал, не знаю. может кто просветит, какие символы распознает эта функция?

Оттуда же:
\\s any whitespace character
any переводится любой

Yukko:

--- Цитировать ---metton:
/.*?/
--- Конец цитаты ---

Согласен. Ищет минимальное совпадение.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 
Перейти к полной версии