LINUX.ORG.RU

Зачем это нужно?

 ,


0

2

Сегодня случайно узнал о диапазоне [A-z], если кто вдруг не знает, это означает, вроде [A-Za-z_`\[\]\\^](используется синтаксис JS). Я хотел бы поинтересоваться, а это кому-то надо? Кто нибудь использует это хотя бы раз в год? Есть юзкейсы? Или эти ребята запиливают уже абы что, лишь бы запилить, по принципу, если это может понадобиться хоть кому-то, хоть когда-то, хоть зачем-то, это должно быть канонизировано?

Или эти ребята запиливают уже абы что, лишь бы запилить

Подобное запилино давно, во времена ASCII-таблицы. Так было, оно так работало и должно продолжать работать, а уж часто ли это используют совсем другое дело.

mky ★★★★★
()

нытик-тред. у природы нет плохой погоды.

chg ★★★★★
()

Я хотел бы поинтересоваться, а это кому-то надо?

Нет, случайно получилось. Когда ASCII запиливали, решили что было бы неплохо одним битом регистр менять. Между буквами остался промежуток, его заполнили видимо абы чем.

anonymous
()

Диапазон [n-m] это все символы с кодами от n до m. A-z в 99% это ошибка (или опечатка или незнание ASCII).

Legioner ★★★★★
()
Ответ на: комментарий от newKingOfTheBlock

например, A-Za-z я юзал для выборки всех слов (там был простой кейс выбрать текст по столбцам, но вместо текста могли быть спецсимволы, числа и т.д.)

Chaser_Andrey ★★★★★
()
Ответ на: комментарий от mky

и должно продолжать работать

Давно пора для некрофилов устраивать отдельный загон в уголке.

anonymous
()
Ответ на: комментарий от anonymous

скоро придет Ленарт и для удобства запилит дополнительную проверку на не вхождение _`[]\^ в диапазон A-z, чтоб везде одинаково было (и в мозгу у быдлокодера и на мониторе)
нужно только подождать

anTaRes ★★★★
()
Ответ на: комментарий от anTaRes

Ман principle of least astonishment. Былокодеры — те, кто в тупую реализовал матчилку регэкспов в соответствии с последовательностью кодов символов. А твоё блеяние про поттеринга сделаю вид, что не заметил.

anonymous
()
Ответ на: комментарий от anonymous

Былокодеры — те, кто в тупую реализовал матчилку регэкспов в соответствии с последовательностью кодов символов.

Окай, покажи как Ъ-кодеры матчат диапазон на километре текста.

anTaRes ★★★★
()
Ответ на: комментарий от anTaRes

Ты завел разговор про быдлокодеров — тебе и показывать.

anonymous
()

Юзкейсов мало, кроме случаев когда это критично для производительности. То же самое касается и [A-Z], и [a-z], поскольку сейчас 21 век и есть \p{Alphabetic}. Исключения — когда работаешь с заведомо ASCII строкой (какие-нибудь протоколы), но тогда возникает вопрос, нафиг тебе регэкспы.

Впрочем, если ты про JS — он настолько убог, что не может даже в http://www.regular-expressions.info/unicode.html#category и его стандартные регэкспы нафиг не нужны (исключения — см. выше). Разве что XRegexp пользовать всё время.

x3al ★★★★★
()
Ответ на: комментарий от newKingOfTheBlock

Латинница не входит в [A-Za-z]. Тот, кто говорит иначе — нагло врёт.

Повторяю, к заведомо ASCII-протоколам не относится. Но регэкспом обычно разбирают произвольный текст.

x3al ★★★★★
()
Ответ на: комментарий от newKingOfTheBlock

экзотику

Расскажи немцам, французам, испанцам и очень-очень много кому еще, что их родные языки, с которыми они имеют дело ежедневно — экзотика.

dexpl ★★★★★
()
Ответ на: комментарий от newKingOfTheBlock

Ага, настолько распространенная букова, что даже в стандартной раскладке ее нет

Какая именно — ï? И в стандартной раскладке какого языка? XCompose в помощь.

dexpl ★★★★★
()
Ответ на: комментарий от dexpl

Какая именно — ï?

Да, за нее речь шла. Кстати, скажи мне порядковый номер, под которым она стоит в совнеменном стандартном латинском алфавите, а то что-то я подслеповат стал, в упор не вижу

https://ru.wikipedia.org/wiki/Латинский_алфавит#.D0.A1.D0.BE.D0.B2.D1.80.D0.B...

newKingOfTheBlock
() автор топика
Ответ на: комментарий от newKingOfTheBlock

Кстати, скажи мне порядковый номер, под которым она стоит в совнеменном стандартном латинском алфавите

Один с i, если язык не слишком экзотический.

даже в стандартной раскладке ее нет

Ты уверен, что все набирают на en-US раскладке, а не, скажем, на французской? Кроме того, в OS X есть из коробки.

x3al ★★★★★
()
Ответ на: комментарий от newKingOfTheBlock

Надо стараться упрощать, а не усложнять.

Это базовая поддержка i18n. Такая же базовая, как Intl.Collator в том же жабоскрипте. Если программа не умеет i18n — её место на свалке либо в музее, сейчас 21 век и компьютер должен решать проблемы людей, а не добавлять новых.

x3al ★★★★★
()
Ответ на: комментарий от Chaser_Andrey

Скорей всего все. Я тоже не знал, но оказывается что все эти метапоследовательности не сами по себе, а происходят прямиком из таблицы ascii. Прочитай тред целиком, тут все пояснили.

newKingOfTheBlock
() автор топика
Ответ на: комментарий от newKingOfTheBlock

А, тьфу, просто последовательность ascii. В таком случае я [A-z] не использовал по причине неочевидности.

Chaser_Andrey ★★★★★
()

я вообще regexp использую раз в год, а так в принципе у этого [A-z] скорее всего нет применения, все находят готовые решения в первых 10 ответах гугла, а вот [A-z] там точно не будет

q11q11 ★★★★★
()
Ответ на: комментарий от q11q11

все находят готовые решения в первых 10 ответах гугла

Если по такому принципу действовать, не видать надежных программ как своих ушей.

newKingOfTheBlock
() автор топика
Ответ на: комментарий от newKingOfTheBlock

для 95% web-софта (читай "сайтики") этого более чем достаточно, а клиенту вообще пофигу что внутри и как это сделано (шёпотом "битрикс")

q11q11 ★★★★★
()
Последнее исправление: q11q11 (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.