Какое сокращение является правильным - «регулярное выражение» или «регулярное выражение» [закрыто]


119

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

Итак ... каково правильное сокращение для «регулярного выражения»? Это «регулярное выражение» или «регулярное выражение»? В Интернете я вижу оба варианта использования, хотя «регулярное выражение» кажется более популярным, и список тегов здесь, на SO, также включает просто «регулярное выражение». Но многие люди также используют "регулярное выражение" в своих вопросах.


5
Я считаю, что выигрывает тот, который проще всего произносить - «регулярное выражение» на милю превосходит «регулярное выражение». В человеческих языках это происходит постоянно. Это просто мое мнение.
Hamish Grubijan

9
Честно говоря, я никогда не видел, чтобы это называли регулярным выражением. Ни разу за всю мою жизнь до этого момента.
Энтони Пеграм

4
Исторически вы, конечно, правы. Слово «регулярное выражение» является сокращением слов «регулярное выражение». Но то, что мы называем регулярными выражениями, полностью отличается от того, что мы называем регулярным выражением. Например: регулярные выражения разработаны, чтобы быть чрезвычайно простыми и элегантными. Я могу записать полный синтаксис и семантику регулярных выражений в 4 строки каждая. На самом деле, мне даже не нужны полные строки, достаточно всего 4 пунктов в каждой. Напротив, синтаксис для литералов регулярного выражения в спецификации ECMAScript5 занимает всю страницу ...
Йорг В. Миттаг

2
Это напоминает мне еще один «важный» вопрос: «Это произносится как« машина »или« чар »?»
Эш

2
Этот вопрос кажется не по теме, потому что он касается терминологии, а не программирования.
Toto

Ответы:


563
/regexp?/    


107
этот ответ полон победы
медер омуралиев

12
+1 - Я вижу, что вы там делали
Ник Крейвер

5
@Igor: это именно то , что ?средства в регулярном выражении {0,1}. Правда какой регексп? движки не поддерживают вопросительный знак, но они отстой ;-) В любом случае Perl поддерживает, и это наиболее близкий к "стандарту" синтаксис регулярных выражений.
David Z

6
+1 это абсолютный гений!
Мэтью Дж. Моррисон

6
Это не ответ на заданный вопрос.
Азат

64

Googlefight утверждает, что регулярное выражение побеждает, от 685000 до 289000 (что составляет примерно 2,37: 1).

Кроме того, регулярное выражение странно произносить вслух, потому что очень мало (если вообще есть?) Слов оканчиваются на звук «-ksp», но есть много слов, оканчивающихся на звук «-ecks».


7
В World of Warcraft люди выходят, чтобы набраться «опыта» (сокращение от «очков опыта»). Так сказать «exp» не сложно и не звучит странно. Все дело в том, как говорящий употребляет это слово.
Ши,

1
Я бы произнес «exp» как «ex-pee» - я не играю в WoW ...
Адриан Линч,

1
Мне нравится ответ, но я предпочитаю использование регулярного выражения . Недостаточно просто регулярного выражения , потому что оно не учитывает все согласные в начале. Обычно это следует делать с помощью аббревиатур, например. константа должна быть Const , а не против .
Адам Хуньяди

Игроки @Shi Warcraft почти всегда читают или пишут "exp".
Навид Вафаэй

24

Они оба в порядке. «регулярное выражение» является более распространенным, но «регулярное выражение» используется более широко, чем указывают другие ответы здесь. Некоторые примеры:


2
Man regexp на моем Mac открывает страницу руководства Tcl. Хммм ... может это не одобрение.
dmckee --- котенок экс-модератора

17

regexкороче; следовательно, лучше :) Кроме того, это легче произносится.


10

Принятое сокращение - «регулярное выражение».

По моему опыту, «Regexp» используется только в контексте Javascript, где фактически вызывается объект, представляющий регулярное выражение RegExp.


3
и в emacs. Функция поиска регулярного выражения isearch-forward-regexpи т. Д.
Адам Розенфилд

2
ECMAScript в целом - даже ActionScript называет этоRegExp
Amarghosh


1
Итак, в исходной записке QED, где Деннис Ричи и Кен Томпсон представили новую функцию регулярных выражений (в контексте редактирования текста), они написали: «В последующем обсуждении« <regexp> »будет обозначать регулярное выражение. «.
Sz.

6

Я думаю, что «регулярное выражение» более распространено (например, пакет Java java.util.regex). Если 10 000 фанатов Элвиса не могут ошибаться, я бы проголосовал за это, основываясь на цифрах.


2
И в .NET это такSystem.Text.RegularExpressions.Regex
Энтони Пеграм

6

Согласно Википедии

В вычислениях регулярные выражения, также называемые regex или regexp, ...


10
Кто, черт возьми, голосует за цитату из Википедии?!?
Адам Харт

7
@ Адам Харт: Кто, черт возьми, голосует за риторические вопросы?
Эндрю Гримм

@Andrew haha, на самом деле это «вопрос-постановка вопроса»
Адам Харт

5

«регулярное выражение» является более распространенным и используется в Perl FAQ. Google дает 4,5 миллиона обращений для «регулярного выражения» и 3,6 миллиона для «регулярного выражения». Википедия использует оба.

Что Вы предпочитаете? Я не думаю, что кто-то будет плохо думать о вас, если вы будете использовать их как взаимозаменяемые.


4
Достаточно интересно, что «perldoc perlre» (который описывает регулярные выражения в perl) везде говорит «регулярное выражение», но ссылается на «операторы, подобные кавычкам Regexp» в perlop. «perldoc perlop» немного сбивает с толку и говорит и то, и другое, хотя в основном «регулярное выражение». «perl -le 'print ref (qr / x /)'» выводит «Regexp». Я бы сказал, что Perl запутался.
Peter V. Mørch

4

Я бы сказал, что это «регулярное выражение», это основано на моем собственном опыте, на том, как я это слышал, и на обсуждении здесь сообщества.

Я не могу найти его на данный момент, но это обсуждение касалось мета-тегов на SO, поэтому это единственный вопрос с тегом «regexp» , остальные (8441 и подсчет) помечены как «regex» .


Просто боковая мысль здесь: имеет значение, что «правильно»? Подумайте о цели здесь, почему вы используете какое-то слово? Общаться. В определенной степени не имеет значения, что правильно или нет, важно, с каким из них вы можете эффективно общаться с большим количеством людей . Я бы сказал, что вы легко можете возразить против использования неправильного термина, если это то, что использует большинство вашей аудитории, поскольку общение - ваша цель.


Причина, по которой нет вопросов с тегом «regexp», заключается в том, что некоторые из нас продолжают удалять этот тег или заменять его на «regex» (как я только что сделал здесь). Нам не нужны два тега с одинаковым значением, и «регулярное выражение» имеет преимущество с точки зрения пользовательских предпочтений (хотя это может быть только потому, что оно короче).
Алан Мур

@Alan - да, но не думаете ли вы, что в данном случае «регулярное выражение» было ТАКЖЕ хорошим выбором, потому что вопрос заключается в сравнении двух?
Vilx-

1
@ Vlix - Вы можете так же легко возразить, что ни один из тегов не подходит, поскольку вопрос действительно о терминологии, а не о регулярных выражениях. Но ответы, кажется, показывают, что «регулярное выражение» в любом случае является победителем, так почему бы нам просто не придерживаться этого?
Алан Мур,

2
ОБНОВЛЕНИЕ: этот вопрос / ответ прошел до того, как здесь, в StackOverflow, была реализована функция «синонимов тегов». Теперь теги вроде regexpи regular-expressionавтоматически конвертируются в regex.
Алан Мур

4

Думаю, пора перестать думать о сокращениях и сокращениях. Регулярные выражения, которые мы используем в наших повседневных задачах, полностью отличаются от регулярных выражений в информатике или теории формального языка. Вот почему Ларри Уолл и другие видные члены сообщества Perl годами предпочитали «регулярное выражение»: называть их RegExp или RegEx, или даже RE, предполагает отношения, которые больше не применяются.


3

Я также слышал / читал:

reg-exp

А некоторые люди предпочитают, regexпотому что множественное число regexes«лучше»! (помимо причин, объясненных другими ответами).

.NET regex:System.Text.RegularExpressions.Regex

JavaScript regexp:RegExp


1
Или н.пл. Regexen.
WALF

2

Оба варианта подходят для письменного выступления, хотя вы, вероятно, не захотите слишком часто произносить "регулярное выражение" вслух;)

Для использования в коде я думаю, что regexp, вероятно, более понятен. Особенно, если вы используете заглавные буквы, такие как RegEx / RegExp. Суффикс Ex часто используется для обозначения расширенной версии более простой функции ... например, CreateWindow / CreateWindowEx в Windows API, поэтому RegExp может быть немного менее двусмысленным с точки зрения читаемости кода.


-1

Я предпочитаю «ре», но это зависит от языка. JavaScript перечисляет его как «RegExp», тогда как в большинстве других языков это просто «RegEx».

При поиске в Google используйте более короткую версию. Но на форумах используйте "re";)

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.