Проверяя механизм регулярного выражения PHP, я вижу, что он считает, что только [0-9A-Za-z_]
является символом слова. Буквы не-ASCII-языков, таких как иврит, не соответствуют символам слова с [\w]
. Существуют ли какие-либо последовательности escape-кода в PHP или Perl, которые будут соответствовать букве на любом языке? Я мог бы добавлять диапазоны для каждого алфавита, который, как я ожидаю, будет использоваться, но пользователи всегда удивят нас неожиданными языками!
Обратите внимание, что это не для фильтрации безопасности, а для токенизации текста.
Попробуйте [\pL_]
- см. ссылку в
Попробуйте \p{L}
. Он соответствует любому типу письма с любого языка. Если вы не хотите использовать char set []
.
u
, чтобы заставить его работать.