#1300 closed задача (готово)
РЭ: поддержка регулярных выражений PCRE2 платами VE-01/VE-02
Reported by: | alx | Owned by: | Vladimir |
---|---|---|---|
Priority: | major | Component: | Руководство по эксплуатации |
Keywords: | Cc: | san |
Description
Ранее платы VE-01/VE-02 использовали регулярные выражения PCRE (реализованные библиотекой libpcre). Теперь платам VE-01/VE-02 добавлена поддержка более современных регулярных выражений PCRE2 (реализованных библиотекой libpcre2). PCRE2 имеет ряд полезных возможностей, например условная подстановка, благодаря которой можно одним регулярным выражением с заменой выполнять разные подстановки в зависимости от исходного номера:
/^1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555}
(см. в regex101).
К сожалению, синтаксис регулярных выражений PCRE2 не полностью обратно совместим с PCRE. Основное из заметных пользователям отличий - другой синтаксис ссылок на группы захвата в строках замены: вместо комбинаций "бэкслеш-цифра" (\1
, \2
, \3
и т.д.) PCRE2 в строке замены использует комбинации "доллар-число" ($1
, $2
, $3
и т.д.). Кроме этого PCRE2 более строго чем PCRE контролирует синтаксис регулярных выражений, в результате чего в очень редких случаях регулярное выражение, работавшее в PCRE, может не работать в PCRE2.
Для обеспечения обратной совместимости с уже существующими конфигурациями в платах VE-01 и VE-02 сохранена поддержка регулярных выражений PCRE (библиотека libpcre). Выбор используемой библиотеки выполняется автоматически для каждого регулярного выражения по следующим правилам:
- если регулярное выражение не компилируется PCRE2 (libpcre2 возвращает ошибку) - используется PCRE (libpcre);
- если используется регулярное выражение с заменой, и в строке замены имеются ссылки со "старым" синтаксисом (
\1
,\2
,\3
и т.д.) - используется PCRE (libpcre); - во всех остальных случаях используется PCRE2 (libpcre2).
Дополнительно введен глобальный конфигурационный параметр "Режим PCRE", позволяющий принудительно установить использование только PCRE или только PCRE2. Параметр "Режим PCRE" может принимать одно из следующих значений:
- авто (значение по умолчанию) - выбор PCRE или PCRE2 выполняется автоматически по описанным выше правилам;
- PCRE - всегда используется PCRE (libpcre);
- PCRE2 - всегда используется PCRE2 (libpcre2).
Этот новый конфигурационный параметр находится на вкладке "Разное" диалога конфигурации плат VE-01/VE-02:
Для удобства пользователей в веб-интерфейсе блока MC04-DSL-3U во всех полях ввода регулярных выражений и/или строк замены (подстановки) плат VE-01/VE-02 выполняется контроль синтаксиса "на лету" (то есть прямо в процессе ввода). Если в регулярном выражении обнаружена ошибка, то все регулярное выражение или его часть (от места обнаружения ошибки и до конца выражения) выделяется светло-красным фоном. Если навести курсор на такое выделение, появляется сообщение с описанием ошибки:
Если параметр "Режим PCRE" не установлен в значение "PCRE", в строках замены ищутся ссылки на группы захвата в "старом" стиле (\1
, \2
и т.д.). Если такая ссылка обнаруживается, то в режиме "авто" она выделяется желтым фоном (давая понять пользователю, что из-за этой ссылки будет использоваться PCRE вместо PCRE2), а в режиме "PCRE2" она выделяется светло-красным фоном (давая понять пользователю, что здесь, вероятно, ошибка).
Предлагаю в РЭ аппаратуры MC04-DSL-3U:
- указать, что используются именно PCRE2 с расширенной подстановкой (потому что расширенная подстановка дает дополнительные возможности, как в приведенном выше примере), дать вот эту ссылку на описание синтаксиса;
- во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
- описать, при каких условиях для обратной совместимости с ранее сделанными настройками будет использоваться PCRE вместо PCRE2 (см. выше);
- описать новый конфигурационный параметр "режим PCRE";
- описать контроль синтаксиса регулярных выражений в веб-интерфейсе.
Attachments (2)
Change History (50)
by , 5 months ago
by , 5 months ago
follow-up: 2 comment:1 by , 4 months ago
follow-up: 3 comment:2 by , 4 months ago
Replying to Vladimir:
На первый взгляд, ты выбрал странное место для выбора параметра "Режим PCRE":
Если у тебя есть идея/предложение о том, как сделать лучше - создай тикет и изложи в нем свое предложение. Я его непременно рассмотрю.
Описание параметра "Режим PCRE", наверное, лучше сделать в п."7.1.2 Регулярные выражения..." ? "
У меня нет мнения о том, где в РЭ лучше сделать описание параметра "режим PCRE". Оставляю это на усмотрение разработчика РЭ. Я - разработчик "железа", поэтому мне лучше задавать вопросы о работе разработанного мной "железа", а не о РЭ...
- во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
А ""бэкслэш-буква" на "доллар-буква"" тоже надо менять?
Уточни, пожалуйста, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
- описать, при каких условиях для обратной совместимости с ранее сделанными настройками будет использоваться PCRE вместо PCRE2 (см. выше);
- описать новый конфигурационный параметр "режим PCRE";
- описать контроль синтаксиса регулярных выражений в веб-интерфейсе.
??? Ты процитировал мои предложения, но ничего не написал от себя... У тебя есть какие-то вопросы по процитированным предложениям?
follow-up: 4 comment:3 by , 4 months ago
Replying to alx:
Replying to Vladimir:
На первый взгляд, ты выбрал странное место для выбора параметра "Режим PCRE":
Если у тебя есть идея/предложение о том, как сделать лучше - создай тикет и изложи в нем свое предложение. Я его непременно рассмотрю.
Я уже высказал сомнение, но не уверен, как лучше: если ты и САН считаете, что новый параметр лучше описывать далеко от основного текста про регулярные выражения (почти в конце РЭ) и у вас на это есть веские доводы, которых я не знаю, то я спорить не буду.
- во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
А ""бэкслэш-буква" на "доллар-буква"" тоже надо менять?
Уточни, пожалуйста, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
Например, на твоём втором скриншоте есть \d,
а также в "Табл. 7.1 Регулярные выражения вызова" 6 раз встречается \d
(2\d{6}$ ... /5(\d{3})/6\1 и в пяти строчках Табл.7.2.
??? Ты процитировал мои предложения, но ничего не написал от себя... У тебя есть какие-то вопросы по процитированным предложениям?
От себя на напечатал вопрос к тебе: "А "бэкслэш-буква" на "доллар-буква"" тоже надо менять?",
но чёткий ответ пока не получил...
follow-up: 5 comment:4 by , 4 months ago
Replying to Vladimir:
Уточни, пожалуйста, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
Например, на твоём втором скриншоте есть \d,
Во-первых, я спрашивал, где встречается комбинация "бэкслэш-буква" в тексте РЭ.
Во-вторых, на моем втором скриншоте нет строки замены.
а также в "Табл. 7.1 Регулярные выражения вызова" 6 раз встречается \d
Я не спрашивал, сколько раз комбинация \d
встречается в теблице 7.1. Я просил уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
В процитированном примере комбинации "бэкслэш-буква" в строке замены нет.
и в пяти строчках Табл.7.2.
Я не спрашивал, в скольки строчках таблицы 7.2 встречается комбинация "бэкслэш-буква". Я просил уточнить, где конкретно эта комбинация встречается в описаниях или примерах строк замены.
??? Ты процитировал мои предложения, но ничего не написал от себя... У тебя есть какие-то вопросы по процитированным предложениям?
От себя на напечатал вопрос к тебе: "А "бэкслэш-буква" на "доллар-буква"" тоже надо менять?",
А какое отношение этот твой вопрос имеет к цитате, которая находится после него? Я думал, что ты в комментариях отвечаешь на процитированный текст после цитаты (ниже нее), а не перед ней (выше)...
Теперь же я запутался... Так твой вопрос был ответом на какую цитату - которая выше этого вопроса или которая ниже него?
но чёткий ответ пока не получил...
Отвечу после того как получу уточнения, о которых просил.
follow-up: 7 comment:5 by , 4 months ago
Replying to alx:
Replying to Vladimir:
Уточни, пожалуйста, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
Например, на твоём втором скриншоте есть \d,
Во-первых, я спрашивал, где встречается комбинация "бэкслэш-буква" в тексте РЭ.
В РЭ-61, стр. 460, Табл.7.1 в предпоследней и последней строке есть /d
(я понял это, как "бэкслэш d", т.е. "бэкслэш и буква" - надо ли это менять на "$ и буква" ?)
Во-вторых, на моем втором скриншоте нет строки замены.
Там есть "бэкслэш и буква d" или \d по другому называется?
а также в "Табл. 7.1 Регулярные выражения вызова" 6 раз встречается \d
Я просил уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
В процитированном примере комбинации "бэкслэш-буква" в строке замены нет.
А вот это там есть: \d
- разве это не "бэкслэш-буква"? Тогда что это?
Я просил уточнить, где конкретно эта комбинация встречается в описаниях или примерах строк замены.
Я уже выше показал пример.
От себя на напечатал вопрос к тебе: "А "бэкслэш-буква" на "доллар-буква"" тоже надо менять?",
А какое отношение этот твой вопрос имеет к цитате, которая находится после него? Я думал, что ты в комментариях отвечаешь на процитированный текст после цитаты (ниже нее), а не перед ней (выше)...
Теперь же я запутался... Так твой вопрос был ответом на какую цитату - которая выше этого вопроса или которая ниже него?
И я уже запутался :-)
но чёткий ответ пока не получил...
Отвечу после того как получу уточнения, о которых просил.
Ты бы лучше написал конкретный пример, как надо по-твоему записать в РЭ про эти выражения,
иначе и юзеры ничего не поймут и будут задавать вопросы всю жизнь :-) (их же много)
follow-ups: 8 10 12 comment:6 by , 4 months ago
Cc: | added |
---|
На данный момент я напечатал черновик пункта
"7.1.2 Регулярные выражения (описание шаблонов номеров)"
"В плате VE в качестве шаблонов номеров применяются perl-совместимые регулярные выражения PCRE2 (реализованные библиотекой libpcre2). PCRE2 имеет ряд полезных возможностей, например условная подстановка, благодаря которой можно одним регулярным выражением с заменой выполнять разные подстановки в зависимости от исходного номера:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1) и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой. Регулярные выражения (англ. regular expressions) – это широко используемый способ описания шаблонов для поиска текста и проверки соответствия текста шаблону. Регулярные выражения – формальный язык поиска и осуществления манипуляций с подстроками в тексте, основанный на использовании метасимволов. Для поиска используется строка-образец (шаблон), состоящая из символов и метасимволов и задающая правило поиска.
Подробнее познакомиться с регулярными выражениями можно по следующим ссылкам:
– Описание синтаксиса на русском: http://www.shtogrin.com/library/web/pcre/doc/pcre/
– Полезный сайт на английском http://www.rexegg.com/
– Онлайн калькулятор, где можно проверить свои регулярные выражения: https://regex101.com/
Синтаксис регулярных выражений PCRE2 не полностью обратно совместим с PCRE. Основное из заметных пользователям отличий - другой синтаксис ссылок на группы захвата в строках замены: вместо комбинаций "бэкслеш-цифра" (\1, \2, \3 и т.д.) PCRE2 в строке замены использует комбинации "доллар-число" ($1, $2, $3 и т.д.). Кроме этого PCRE2 более строго чем PCRE контролирует синтаксис регулярных выражений, в результате чего в очень редких случаях регулярное выражение, работавшее в PCRE, может не работать в PCRE2.
И далее по тексту описания Тикета-1300"
Твои скриншоты с текстом для них, наверное, надо вставить в пункт
"7.12 Настройка параметров «ping» и «Опции SIP» плат VE (вкладка Разное)",
т.е. заменить "Рис. 7.126 Вкладка Разное плат VE." и добавить твой второй скриншот.
Подскажи, всё ли тут складно, правильно, понятно?
Или что-то желательно удалить/добавить, т.к. тут сочетание старого (РЭ-61) и нового текстов (тикет 1300).
follow-up: 13 comment:7 by , 4 months ago
Cc: | removed |
---|
Прежде чем отвечать на твои вопросы, я хочу внести ясность. В comment:1 ты процитировал мое предложение из описания тикета:
во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
и под этой цитатой написал вопрос:
А ""бэкслэш-буква" на "доллар-буква"" тоже надо менять?
Я понял это так, что твой вопрос был написан в ответ на это процитированное тобой мое предложение и, следовательно, следует понимать этот вопрос в контексте данного предложения, а именно, надо ли менять "бэкслэш-буква" на "доллар-буква" во всех описаниях и примерах строк замены. Именно так я понимаю твой вопрос, и именно этим вызваны мои встречные вопросы о том, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
Если я твой вопрос понял неправильно (например он не относился к процитированному предложению), поправь меня, пожалуйста.
Replying to Vladimir:
В РЭ-61, стр. 460, Табл.7.1
??? В РЭ-61 на странице 460 нет таблицы 7.2! Насколько я вижу, таблица 7.2 в этой редакции РЭ находится на странице 237. А на странице 460 я вообще никаких таблиц не вижу...
в предпоследней и последней строке есть /d
Если это был ответ на мой вопрос о том, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква", то
- в предпоследней строке таблицы 7.2 нет строки замены, там только регулярное выражение (без замены);
- в последней строке таблицы 7.2 строка замены есть, но в ней (строке замены) нет комбинации "бэкслэш-буква", там есть только комбинация "бэкслеш-цифра", которую уже предложено заменить на "доллар-цифра" в описании тикета.
Во-вторых, на моем втором скриншоте нет строки замены.
Там есть "бэкслэш и буква d" или \d по другому называется?
Не понял вопрос...
Во-первых, в каком смысле "по-другому"? По-другому нежели как? "По-другому" - это сравнительное выражение, оно не бывает само по себе...
Во-вторых, как \d
называется где? В строке замены, к которой относилось мое предложение, в ответ на которое ты начал спрашивать про "бэкслэш-буква", комбинация \d
никакого специального значения не имеет и не называется никак. Вот в регулярных выражениях есть такая комбинация. Согласно документации, ссылка на которую приведена в описании тикета, комбинации типа \d
называются "типы символа" ("CHARACTER TYPES"):
CHARACTER TYPES . any character except newline; in dotall mode, any character whatsoever \C one code unit, even in UTF mode (best avoided) \d a decimal digit
Только какое это имеет отношение к моему предложению?
В процитированном примере комбинации "бэкслэш-буква" в строке замены нет.
А вот это там есть:
\d
Нет этого там. Насколько я вижу, строка замены в процитированном тобой примере - 6\1
, и здесь вообще нет ни одной буквы! Здесь три символа - 6
, \
и 1
, ни один из которых буквой не является.
- разве это не "бэкслэш-буква"? Тогда что это?
Это "бэкслэш-буква", только в строке замены приведенного тобой примера этого нет.
Я просил уточнить, где конкретно эта комбинация встречается в описаниях или примерах строк замены.
Я уже выше показал пример.
Я уже написал выше, что в этом примере строка замены не содержит комбинации "бэкслэш-буква". Она вообще букв не содержит.
Теперь же я запутался... Так твой вопрос был ответом на какую цитату - которая выше этого вопроса или которая ниже него?
И я уже запутался :-)
Если ты сам не помнишь, к чему относился твой вопрос, предлагаю этот вопрос просто снять.
Ты бы лучше написал конкретный пример, как надо по-твоему записать в РЭ про эти выражения,
иначе и юзеры ничего не поймут и будут задавать вопросы всю жизнь :-) (их же много)
Например, упоминавшуюся тобой выше строку замены 6\1
я предлагаю заменить на 6$1
.
comment:8 by , 4 months ago
Replying to Vladimir:
Твои скриншоты
Подскажи, всё ли тут складно, правильно, понятно?
Уточни, пожалуйста, кому адресован этот вопрос. Сначала я думал, что @san (так как он добавлен в CC этим комментом, а я не упоминаюсь), но потом меня смутило "твои скриншоты"... Вроде бы скриншоты к тикету добавлял только я... Хотя, может быть @san передавал тебе какие-то другие скриншоты (вне этого тикета)...
follow-up: 14 comment:10 by , 4 months ago
Вот, кстати, увидел не очень понятный момент (даже если вопрос и не был адресован мне):
Replying to Vladimir:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1) и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой.
Кроме чего "того", учитывая, что выше был как раз приведен пример регулярного выражения с заменой??
comment:11 by , 4 months ago
Cc: | added |
---|
В comment:7 @san был удален из CC случайно (так как он был добавлен, когда я уже писал ответ на другой комментарий). Возвращаю обратно.
follow-up: 16 comment:12 by , 4 months ago
Вот еще, на мой взгляд, странное место, которое может вызвать вопросы читателей:
Replying to Vladimir:
Синтаксис регулярных выражений PCRE2 не полностью обратно совместим с PCRE.
У читателей наверняка возникнет вопрос: а при чем тут вообще PCRE, и почему его может или должна волновать обратная совместимость с ним?
follow-up: 15 comment:13 by , 4 months ago
Replying to alx:
А ""бэкслэш-буква" на "доллар-буква"" тоже надо менять?
Я понял это так, что твой вопрос был написан в ответ на это процитированное тобой мое предложение и, следовательно, следует понимать этот вопрос в контексте данного предложения, а именно, надо ли менять "бэкслэш-буква" на "доллар-буква" во всех описаниях и примерах строк замены. Именно так я понимаю твой вопрос
Правильно понял, так надо ли менять ""бэкслэш-буква" на "доллар-буква" во всех описаниях и примерах строк замены" ?
??? В РЭ-61 на странице 460 нет таблицы 7.2! Насколько я вижу, таблица 7.2 в этой редакции РЭ находится на странице 237.
Это была опечатка, на самом деле таблица 7.1 на стр.236 РЭ-61 и Табл.7.2 на стр.237.
в предпоследней и последней строке есть /d
Если это был ответ на мой вопрос о том, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква", то
- в предпоследней строке таблицы 7.2 нет строки замены, там только регулярное выражение (без замены);
- в последней строке таблицы 7.2 строка замены есть, но в ней (строке замены) нет комбинации "бэкслэш-буква", там есть только комбинация "бэкслеш-цифра", которую уже предложено заменить на "доллар-цифра" в описании тикета.
В предпоследней строке табл. 7.2 есть вот это: "(7\d{4})|(6\d{2})" и тут я вижу \d ("бэкслэш-буква"),
а "комбинацию "бэкслеш-цифра"" я тут не вижу, надо ли тут что-то менять?
В последней строке табл.7.2 есть вот это: "/2(\d{6})/83422\1" и тут есть \d ("бэкслэш-буква"),
и \1 ("бэкслеш-цифра"), тогда надо тут должно быть так: "/2(\d{6})/83422$1" ?
Во-вторых, на моем втором скриншоте нет строки замены.
Там есть "бэкслэш и буква d" или \d по другому называется?
Не понял вопрос...
Я не знаю, как обозначается строка замены (какими символами, признаками)
и думал, что если есть "бэкслеш-цифра" и "бэкслэш-буква", то надо менять бэкслэш на $
Тебе проще и короче было бы для примера записать правильные Рег.выражения в Табл.7.1 и 7.2,
а мне было бы понятнее, где и на что надо менять, а где нет.
Во-первых, в каком смысле "по-другому"? По-другому нежели как? "По-другому" - это сравнительное выражение, оно не бывает само по себе...
Как именно не знаю, но "по-другому" :-)
Во-вторых, как
\d
называется где? В строке замены, к которой относилось мое предложение, в ответ на которое ты начал спрашивать про "бэкслэш-буква", комбинация\d
никакого специального значения не имеет и не называется никак. Вот в регулярных выражениях есть такая комбинация. Согласно документации, ссылка на которую приведена в описании тикета, комбинации типа\d
называются "типы символа" ("CHARACTER TYPES"):
Скажи проще: Чем отличается строка замены от обычной строки
и как правильно записать рег.выражения в Табл.7.1 и 7.2
В процитированном примере комбинации "бэкслэш-буква" в строке замены нет.
А вот это там есть:
\d
Нет этого там. Насколько я вижу, строка замены в процитированном тобой примере -
6\1
, и здесь вообще нет ни одной буквы! Здесь три символа -6
,\
и1
, ни один из которых буквой не является.
Так и мой первый про это вопрос по сути был такой: надо ли менять "бэкслэш-буква" на "$ буква",
и я ждал короткий ответ: либо Да, либо Нет. :-)
- разве это не "бэкслэш-буква"? Тогда что это?
Это "бэкслэш-буква", только в строке замены приведенного тобой примера этого нет.
Я не знал признаков строки замены, поэтому мне лучше приводить примеры: "так было", а "так надо"
(и много ещё чего не знаю в этой области, поэтому лучше писать фрагменты правильного текста для РЭ,
а иначе получается переписка в 10...100 раз длиннее правильного текста).
Я уже написал выше, что в этом примере строка замены не содержит комбинации "бэкслэш-буква". Она вообще букв не содержит.
Короче было написать пример конкретной замены рег. выражений в Таблицах.
Например, упоминавшуюся тобой выше строку замены
6\1
я предлагаю заменить на6$1
.
Вот Это уже конкретно, правильно и коротко! А сочетания \d
не менять!
follow-up: 17 comment:14 by , 4 months ago
Replying to alx:
Вот, кстати, увидел не очень понятный момент (даже если вопрос и не был адресован мне):
Replying to Vladimir:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1) и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой.
Кроме чего "того", учитывая, что выше был как раз приведен пример регулярного выражения с заменой??
Эта фраза взята из РЭ-61, а появилась гораздо раньше (в РЭ-54) и скорее всего это твой текст
(я не мог это придумать), поэтому я и оставил этот текст из РЭ-61, полагая, что это правильный авторский текст.
Исправь предложенный в comment:6 черновик текста для п."7.1.2 Регулярные выражения...",
как надо, чтобы было очень понятно.
follow-up: 18 comment:15 by , 4 months ago
Replying to Vladimir:
Правильно понял, так надо ли менять ""бэкслэш-буква" на "доллар-буква" во всех описаниях и примерах строк замены" ?
Уточни, пожалуйста, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
??? В РЭ-61 на странице 460 нет таблицы 7.2! Насколько я вижу, таблица 7.2 в этой редакции РЭ находится на странице 237.
Это была опечатка,
Три опечатки. :)
В предпоследней строке табл. 7.2 есть вот это: "(7\d{4})|(6\d{2})"
Вот это есть, а замены нет.
и тут я вижу \d ("бэкслэш-буква"),
а "комбинацию "бэкслеш-цифра"" я тут не вижу, надо ли тут что-то менять?
На твое усмотрение.
В последней строке табл.7.2 есть вот это: "/2(\d{6})/83422\1" и тут есть \d ("бэкслэш-буква"),
и \1 ("бэкслеш-цифра"), тогда надо тут должно быть так: "/2(\d{6})/83422$1" ?
Что значит "должно"? Это же просто абстрактный пример, ты можешь приводить любые примеры, какие захочешь (или даже вообще не приводить), здесь никто никому ничего не должен...
Я не знаю, как обозначается строка замены (какими символами, признаками)
Как не знаешь? Это же описано в том самом РЭ, разработчиком которого ты являешься! :) Более того, в comment:3 ты процитировал пример регулярного выражения с заменой из таблицы 7.1 (который ранее сам же туда вписал). Прямо в строке таблицы, из которой ты взял этот пример, в столбце "Описание" в первой же фразе объясняется ровно это - как обозначается строка замены (какими символами, признаками)! Ты процитировал пример из РЭ и даже не прочитал пояснения рядом с ним?
регулярное выражение с заменой – имеет формат: /<выражение>/<замена>, где 'выражение' – регулярное выражение, 'замена' – строка, на которую заменяется совпавший текст в случае его совпадения с регулярным выражением.
Таким образом, признаком регулярного выражения с заменой является символ /
в начале. После этого первого /
идет регулярное выражение (в твоем примере это ^5(\d{3})
), затем еще один символ /
, после которого следует строка замены (в твоем примере 6\1
). Это все написано в пояснении к данному примеру!!!
и думал, что если есть "бэкслеш-цифра" и "бэкслэш-буква", то надо менять бэкслэш на $
Нет комбинации "бэкслэш-буква" в строке замены твоего примера!
Тебе проще и короче было бы для примера записать правильные Рег.выражения в Табл.7.1 и 7.2,
А что, те рег. выражения, которые там записаны - неправильные? Если они неправильные, зачем же тогда ты их туда записал???
а мне было бы понятнее, где и на что надо менять, а где нет.
Каким образом? :) Как приведение мной "правильных" рег. выражений сделают для тебя понятным, где и на что надо менять, если в рег. выражениях я ничего менять не предлагал?
Где, что и на что я предлагаю менять, по-моему ясно указано в моем предложении в описании тикета 11 дней назад:
во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
Во-первых, в каком смысле "по-другому"? По-другому нежели как? "По-другому" - это сравнительное выражение, оно не бывает само по себе...
Как именно не знаю, но "по-другому" :-)
В таком случае, извини, я не могу ответить на твой вопрос. Он мне непонятен.
Скажи проще: Чем отличается строка замены от обычной строки
Что ты называешь "обычной строкой"?
и как правильно записать рег.выражения в Табл.7.1 и 7.2
Так, как они там записаны.
В процитированном примере комбинации "бэкслэш-буква" в строке замены нет.
А вот это там есть:
\d
Нет этого там.
Так и мой первый про это вопрос по сути был такой: надо ли менять "бэкслэш-буква" на "$ буква",
и я ждал короткий ответ: либо Да, либо Нет. :-)
То есть ты спрашиваешь, надо ли менять то, чего нет. Это бессмысленный вопрос, на который я отвечать отказываюсь. Не хочу играть в такие словесные игры...
Я не знал признаков строки замены, поэтому мне лучше приводить примеры: "так было", а "так надо"
Я тебе не начальник, поэтому не могу указывать "как надо". Я могу только предлагать. Пример замены, которую я предлагаю, я по твоей просьбе привел в comment:7.
(и много ещё чего не знаю в этой области, поэтому лучше писать фрагменты правильного текста для РЭ,
а иначе получается переписка в 10...100 раз длиннее правильного текста).
Формат указания рег. выражений с заменой подробно объяснен (с прямым указанием, что в нем рег. выражение, а что строка замены!) в той самой строке, из которой ты процитировал свой пример! Но ты даже не прочитал пояснения к примеру, который процитировал!
Короче было написать пример конкретной замены рег. выражений в Таблицах.
Пример регулярного выражения с заменой в таблице уже написан. Ты сам же его процитировал, но даже не удосужился прочитать, что цитируешь.
Например, упоминавшуюся тобой выше строку замены
6\1
я предлагаю заменить на6$1
.
Вот Это уже конкретно, правильно и коротко! А сочетания
\d
не менять!
Сочетания \d
в строке 6\1
нет.
comment:16 by , 4 months ago
Replying to alx:
Вот еще, на мой взгляд, странное место, которое может вызвать вопросы читателей:
Replying to Vladimir:
Синтаксис регулярных выражений PCRE2 не полностью обратно совместим с PCRE.
У читателей наверняка возникнет вопрос: а при чем тут вообще PCRE, и почему его может или должна волновать обратная совместимость с ним?
Это неконструктивная критика: если тебе не нравится предложенный мной по незнанию предмета текст,
то лучше и короче сразу конкретно предложить изменения плохого текста на хороший и понятный по-твоему:
это же текст про твой хард и софт!
Второй абзац текста для п.7.1.2 я дополнил фразой:
"Ранее платы VE-01/VE-02 использовали регулярные выражения PCRE (реализованные библиотекой libpcre), однако, синтаксис регулярных выражений PCRE2 не полностью обратно совместим с PCRE. Основное из заметных пользователям отличий - другой синтаксис ссылок на группы захвата в строках замены: вместо комбинаций "бэкслеш-цифра" (\1, \2, \3 и т.д.) PCRE2 в строке замены использует комбинации "доллар-число" ($1, $2, $3 и т.д.). Кроме этого PCRE2 более строго чем PCRE контролирует синтаксис регулярных выражений, в результате чего в очень редких случаях регулярное выражение, работавшее в PCRE, может не работать в PCRE2.
И далее по тексту описания Тикета-1300""
Так будет понятно и хорошо?
Если это не точно и непонятно, то попробуй исправить.
follow-up: 19 comment:17 by , 4 months ago
Replying to Vladimir:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1) и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой.
Кроме чего "того", учитывая, что выше был как раз приведен пример регулярного выражения с заменой??
Эта фраза взята из РЭ-61,
Нет такого примера в РЭ-61. И быть не могло, так как такая замена на момент публикации РЭ-61 платами VE-01 и VE-02 не поддерживалась. Такая замена возможна только в PCRE2, поддержка которых в платах VE-01 и VE-02 появилась только 12 дней назад.
follow-up: 20 comment:18 by , 4 months ago
Replying to alx:
Replying to Vladimir:
Уточни, пожалуйста, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
В предпоследней строке табл. 7.2 есть вот это: "(7\d{4})|(6\d{2})"
Вот это есть, а замены нет.
и тут я вижу \d ("бэкслэш-буква"),
а "комбинацию "бэкслеш-цифра"" я тут не вижу, надо ли тут что-то менять?
На твое усмотрение.
А ответить на вопрос, например, "Нет" ты не смог? :-)
Я не знаю этот предмет, поэтому у меня либо нет усмотрения, либо оно неправильное,
поэтому я полагаюсь только на твоё или САН усмотрение - подскажи.
В последней строке табл.7.2 есть вот это: "/2(\d{6})/83422\1" и тут есть \d ("бэкслэш-буква"),
и \1 ("бэкслеш-цифра"), тогда надо тут должно быть так: "/2(\d{6})/83422$1" ?
Что значит "должно"? Это же просто абстрактный пример, ты можешь приводить любые примеры, какие захочешь (или даже вообще не приводить), здесь никто никому ничего не должен...
Пусть "не должно", а "надо", "правильно", "лучше", или "не надо", "не правильно", "плохо"
какой вариант ответа?
Я не знаю, как обозначается строка замены (какими символами, признаками)
Как не знаешь? Это же описано в том самом РЭ,
В РЭ нет ни одного сочетания "строка замены", а выучить и запомнить 144 тысячи слов в РЭ я не могу :-)
Тебе проще и короче было бы для примера записать правильные Рег.выражения в Табл.7.1 и 7.2,
А что, те рег. выражения, которые там записаны - неправильные? Если они неправильные, зачем же тогда ты их туда записал???
Я их скопировал, либо у Автора софта, либо у Знатока (например у САН), полагая, что они точно знают :-)
Где, что и на что я предлагаю менять, по-моему ясно указано в моем предложении в описании тикета 11 дней назад:
во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
Я подумал, что вдруг ты пропустил сочетание /d - вот и задал первый вопрос и вместо короткого ответа "Нет",
получил сотни слов переписки :-)
Скажи проще: Чем отличается строка замены от обычной строки
Что ты называешь "обычной строкой"?
Это которая не является строкой замены :-)
Так, как они там записаны.
Наверное, нет, т.к. ты же указал, что "бэкслэш-цифра" надо менять на "доллар-цифра"
Я тебе не начальник, поэтому не могу указывать "как надо". Я могу только предлагать. Пример замены, которую я предлагаю, я по твоей просьбе привел в comment:7.
Хорошо, мои "как надо" понимай, например, "как лучше" :-)
Например, упоминавшуюся тобой выше строку замены
6\1
я предлагаю заменить на6$1
.
Вот Это уже конкретно, правильно и коротко! А сочетания
\d
не менять!
Сочетания
\d
в строке6\1
нет.
Для меня строка таблицы может иметь много строк текста, например,
в Табл.7.2 семь строк, но последняя строка таблицы имеет 5 строк текст,
так что последняя строка таблицы содержит сочетание \d
follow-up: 21 comment:19 by , 4 months ago
Replying to alx:
Replying to Vladimir:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1) и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой.
Кроме чего "того", учитывая, что выше был как раз приведен пример регулярного выражения с заменой??
Эта фраза взята из РЭ-61,
Нет такого примера в РЭ-61. И быть не могло, так как такая замена на момент публикации РЭ-61 платами VE-01 и VE-02 не поддерживалась. Такая замена возможна только в PCRE2, поддержка которых в платах VE-01 и VE-02 появилась только 12 дней назад.
В РЭ-61 на стр.236 записано:
"7.1.2 Регулярные выражения (описание шаблонов номеров)
В плате VE в качестве шаблонов номеров применяются perl-совместимые регулярные выражения (PCRE) и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой."
Более того, даже в РЭ-55 от января 2023 на стр.223 это же записано и далее во всех РЭ до РЭ-61.
Ты предлагаешь удалить эту фразу в редактируемом РЭ-62 (выделенную жирным шрифтом)?
follow-up: 22 comment:20 by , 4 months ago
Replying to Vladimir:
А ответить на вопрос, например, "Нет" ты не смог? :-)
Не смог.
Я не знаю этот предмет,
Какой "этот предмет"? Что именно ты не знаешь? Если ты не знаешь чего-то о работе разработанных мной изделий - спроси, я постараюсь ответить.
поэтому у меня либо нет усмотрения, либо оно неправильное,
поэтому я полагаюсь только на твоё или САН усмотрение - подскажи.
Так у меня тоже нет усмотрения, я вообще не разработчик РЭ, я не знаю, что там надо, а что не надо. Я больше по "железу" специалист.
Пусть "не должно", а "надо", "правильно", "лучше", или "не надо", "не правильно", "плохо"
какой вариант ответа?
Не знаю.
В РЭ нет ни одного сочетания "строка замены", а выучить и запомнить 144 тысячи слов в РЭ я не могу :-)
По-моему тебе никто не предлагал запомнить 144 тысячи слов в РЭ. :) Я - точно не предлагал. Что я тебе предлагаю, написано в описании этого тикета после выделенного жирным шрифтом слова "предлагаю".
А что, те рег. выражения, которые там записаны - неправильные? Если они неправильные, зачем же тогда ты их туда записал???
Я их скопировал, либо у Автора софта, либо у Знатока (например у САН), полагая, что они точно знают :-)
Зачем же ты их скопировал, если считаешь, что они неправильные? :)
Я подумал, что вдруг ты пропустил сочетание /d - вот и задал первый вопрос и вместо короткого ответа "Нет",
получил сотни слов переписки :-)
Я еще в comment:2 в ответ попросил тебя уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква". Это у меня не прихоть какая-то и не праздное любопытство. Комбинации "бэкслэш-буква" в строке замены не имеют никакого специального значения. Поэтому меня удивило, что где-то в РЭ в строке замены есть такая комбинация (я исходил из предположения, что если ты задал такой вопрос, значит видел такую комбинацию в строке замены). Я полистал РЭ, но комбинаций "бэкслэш-буква" в строке замены не увидел, поэтому попросил твоего уточнения. После этого ты написал уже 8 комментариев, но так и не указал, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
Скажи проще: Чем отличается строка замены от обычной строки
Что ты называешь "обычной строкой"?
Это которая не является строкой замены :-)
Опять играем в словесные игры? Тем и отличается, что строкой замены является.
Так, как они там записаны.
Наверное, нет,
Если ты считаешь их неправильными, то есть видишь в них какие-то ошибки (которых я не вижу), то ты наверное лучше меня знаешь, как эти ошибки исправить.
т.к. ты же указал, что "бэкслэш-цифра" надо менять на "доллар-цифра"
Неправда. Я не указывал, что в регулярных выражениях надо заменить "бэкслэш-цифра" на "бэкслэш-цифра". Что я предлагаю заменить, написано в описании этого тикета после выделенного жирным шрифтом слова "предлагаю":
во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
Здесь ничего не говорится о регулярных выражениях.
Сочетания
\d
в строке6\1
нет.
Для меня строка таблицы может иметь много строк текста, например,
в Табл.7.2 семь строк, но последняя строка таблицы имеет 5 строк текст,
так что последняя строка таблицы содержит сочетание\d
Я не спрашивал, есть ли в последней строке таблицы 7.2 сочетание \d
. Я просил уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква". Ни в описании, ни в строке замены примера из последней строки таблицы 7.2 комбинация "бэкслэш-буква" не встречается.
follow-up: 23 comment:21 by , 4 months ago
Replying to Vladimir:
Ты предлагаешь удалить эту фразу в редактируемом РЭ-62 (выделенную жирным шрифтом)?
Нет, этого я не предлагал. Что я предлагаю, написано в описании тикета после выделенного жирным шрифтом слова "предлагаю".
follow-up: 24 comment:22 by , 4 months ago
Replying to alx:
Replying to Vladimir:
Я не знаю этот предмет,
Какой "этот предмет"? Что именно ты не знаешь? Если ты не знаешь чего-то о работе разработанных мной изделий - спроси, я постараюсь ответить.
В данном случае не знаю подробно про регулярные выражения,
потому и пишу этот уже 20-й коммент :-)
Так у меня тоже нет усмотрения, я вообще не разработчик РЭ, я не знаю, что там надо, а что не надо. Я больше по "железу" специалист.
И по софту ты специалист, а я не специалист ни по твоему железу, ни по софту:
пытаюсь описывать то, чего не знаю, но плохо получается: много вопросов возникает :-)
А приходится писать, т.к. у истинного Автора харда и софта нет времени напечатать про свою плату черновик фрагмента текста для РЭ (хотя на бесчисленные комменты он тратит больше времени, чем на хороший текст пункта в РЭ про свою плату :-) ).
Пусть "не должно", а "надо", "правильно", "лучше", или "не надо", "не правильно", "плохо"
какой вариант ответа?
Не знаю.
Если уж Автор железа и софта не знает (не верю этому), то я тем более :-)
Тогда напишу по своему, возможно, "недоразумению", чтобы дождаться новый тикет
и исправить на "разумение" Автора харда и софта :-)
А что, те рег. выражения, которые там записаны - неправильные? Если они неправильные, зачем же тогда ты их туда записал???
Я их скопировал, либо у Автора софта, либо у Знатока (например у САН), полагая, что они точно знают :-)
Зачем же ты их скопировал, если считаешь, что они неправильные? :)
Так я же не знаю точно - правильные они или нет, вот и спрашиваю у Автора железа,
но поверил тому Разработчику харда/софта, кто сочинил этот текст.
Я еще в comment:2 в ответ попросил тебя уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
/d в РЭ встречается 48 раз, часть примеров я приводил в своих комментах,
а термин "строка замены" я понимал неправильно.
Комбинации "бэкслэш-буква" в строке замены не имеют никакого специального значения.
Так бы сразу и ответил, чтобы я не обращал внимание на /d :-)
Это которая не является строкой замены :-)
Опять играем в словесные игры? Тем и отличается, что строкой замены является.
Признак такого "явления" "бэкслэш-цифра", а теперь будет "$-цифра"?
Сочетания
\d
в строке6\1
нет.
Для тебя 3 символа 6\1
- это строка замены, а для меня это было 3 символа в строке регулярного выражения или текста на станице...
Я не спрашивал, есть ли в последней строке таблицы 7.2 сочетание
\d
. Я просил уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква". Ни в описании, ни в строке замены примера из последней строки таблицы 7.2 комбинация "бэкслэш-буква" не встречается.
А я насчитал в Табл.7.2 шесть "бэкслэш-буква" (а именно "/d").
follow-up: 25 comment:23 by , 4 months ago
Replying to alx:
Replying to Vladimir:
Ты предлагаешь удалить эту фразу в редактируемом РЭ-62 (выделенную жирным шрифтом)?
Нет, этого я не предлагал. Что я предлагаю, написано в описании тикета после выделенного жирным шрифтом слова "предлагаю".
В comment 10 ты ответил:
"Вот, кстати, увидел не очень понятный момент:
Replying to Vladimir:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1) и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой.
Кроме чего "того", учитывая, что выше был как раз приведен пример регулярного выражения с заменой??"
Я понял это так, что жирная фраза тебе непонятная, тогда как, по-твоему, надо написать,
чтобы всем было понятно?
Вот опять неконструктивная критика: увидел непонятный тебе текст,
но не предложил вариант исправления - ты же хорошо знаешь эту тему,
а я - нет, но ты почему-то ждёшь от меня понятный текст про твой хард/софт :-)
comment:24 by , 4 months ago
Replying to Vladimir:
Я больше по "железу" специалист.
И по софту ты специалист, а я не специалист ни по твоему железу, ни по софту:
пытаюсь описывать то, чего не знаю, но плохо получается: много вопросов возникает :-)
Странно, что, несмотря на то, что у тебя возникает много вопросов по "железу" и/или софту, ты их не задаешь (ни одного вопроса по "железу" или "софту" я в этом тикете не видел), а предпочитаешь описывать то, чего не знаешь...
А что, те рег. выражения, которые там записаны - неправильные? Если они неправильные, зачем же тогда ты их туда записал???
Я их скопировал, либо у Автора софта, либо у Знатока (например у САН), полагая, что они точно знают :-)
Зачем же ты их скопировал, если считаешь, что они неправильные? :)
Так я же не знаю точно - правильные они или нет, вот и спрашиваю у Автора железа,
Интересно, что скопировал ты их 5 марта 2020 года (более 4 лет назад!), а спросить, правильные ли они, решил только сейчас... Чего это вдруг? :) Точнее, даже не так. Ты ведь не спрашивал, правильные они или нет. Ты написал:
Тебе проще и короче было бы для примера записать правильные Рег.выражения в Табл.7.1 и 7.2
По-моему эта фраза подразумевает как известный факт, что рег. выражения в теблицах 7.1 и 7.2 неправильные, и ты жалуешься, что я не дал тебе правильные (и почему-то в этом тикете, а не в том, где тебе предлагали эти примеры добавить)...
А с какой стати мне, как ты выразился, записывать для примера правильные Рег.выражения в Табл.7.1 и 7.2, если за те 4 года, что они записаны в РЭ, никто не выражал никаких сомнений в их правильности?
Если у тебя есть разумные основания сомневаться в правильности приведенных в таблицах 7.1 и 7.2 примерах регулярных выражений, поделись ими - напиши, что именно и почему заставляет тебя сомневаться (только не здесь, лучше создай для этого новый тикет, здесь и так много оффтопика).
Я еще в comment:2 в ответ попросил тебя уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
/d в РЭ встречается 48 раз,
Это, безусловно, замечательно. Но я не спрашивал, сколько раз в РЭ встречается /d. Я просил уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
часть примеров я приводил в своих комментах,
Ни в одном из приведенных тобой примеров комбинации "бэкслэш-буква" в строке замены не оказалось.
Комбинации "бэкслэш-буква" в строке замены не имеют никакого специального значения.
Так бы сразу и ответил,
Так бы сразу и спросил. :) Я не телепат, и отвечать на (еще) не заданные вопросы не умею... :)
чтобы я не обращал внимание на /d :-)
Откуда я знаю, надо или нет обращать на них внимание, если я их не видел? Может там где-то ошибка, и на нее как раз надо обратить внимание! Ты мне скажи, в каком месте в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква", я тогда посмотрю и скажу, надо на это обращать внимание или нет...
Опять играем в словесные игры? Тем и отличается, что строкой замены является.
Признак такого "явления" "бэкслэш-цифра", а теперь будет "$-цифра"?
Да как же так-то? В РЭ прямо в том месте, откуда ты взял пример /^5(\d{3})/6\1
, все объяснено про регулярные выражения с заменой (с примерами!). В комментариях я несколько раз на это указывал. В comment:15 я даже это процитировал, а потом еще дополнительно своими словами написал, что является признаком регулярного выражения с заменой...
Нет, указанные тобой комбинации не являются признаками строки замены. Признаком регулярного выражения с заменой является соответствие значения параметра формату регулярного выражения с заменой. Второй раз описание этого формата я цитировать не буду, прочитай мой comment:15 если хочешь это знать или РЭ.
Сочетания
\d
в строке6\1
нет.
Для тебя 3 символа
6\1
- это строка замены, а для меня это было 3 символа в строке регулярного выражения или текста на станице...
При чем тут регулярное выражение? Я просил уточнить, где комбинация "бэкслэш-буква" встречается в описаниях или примерах строк замены. Я не спрашивал о регулярных выражениях...
Я не спрашивал, есть ли в последней строке таблицы 7.2 сочетание
\d
. Я просил уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква". Ни в описании, ни в строке замены примера из последней строки таблицы 7.2 комбинация "бэкслэш-буква" не встречается.
А я насчитал в Табл.7.2 шесть "бэкслэш-буква" (а именно "/d").
Я, конечно, очень этому рад, но я не спрашивал, сколько "бэкслэш-буква" (и каких именно) ты насчитал в таблице 7.2. Я просил уточнить, где в тексте РЭ в описаниях или примерах строк замены встречается комбинация "бэкслэш-буква".
follow-up: 26 comment:25 by , 4 months ago
Replying to Vladimir:
Я понял это так, что жирная фраза тебе непонятная, тогда как, по-твоему, надо написать,
чтобы всем было понятно?
Уточни, пожалуйста, что в этой фразе ты подразумевал под словом "того".
Вот опять неконструктивная критика: увидел непонятный тебе текст,
но не предложил вариант исправления
Я и не обещал предложить тебе какой-то вариант исправления!
И вообще, я же не сам по своей инициативе решил указать тебе на недостатки, я это сделал по твоей собственной просьбе (просьба была в comment:6)! Ты высказал просьбу (причем было непонятно, кому она адресована, я просил уточнить, но ты мою просьбу проигнорировал). Тем не менее, я твою просьбу выполнил и на увиденный мной недостаток указал. И что же? Оказалось, я неправильно выполнил просьбу! :)
С такими запросами тебе следовало бы сразу в comment:6 указать все условия - и что обязательно должен быть вариант исправления, и т.д, и т.п... может быть еще все слова должны были начинаться на букву "п"? :)
А предложить вариант исправления я (пока) не могу. Чтобы предложить вариант формулировки, надо сначала знать ту мысль, которую эта формулировка должна выражать. А я пока этой мысли не знаю, поэтому и предложить вариант не могу. В comment:10 я спрашивал - кроме чего "того"? После этого ты написал уже 7 комментариев, а ответа не дал... Выше я повторно попросил тебя уточнить, что имелось в виду. Когда и если ты уточнишь, я постараюсь придумать вариант понятной формулировки.
- ты же хорошо знаешь эту тему,
Какую "эту тему"? Что ты подразумевал под словом "того", когда писал, как ты выразился, "жирную фразу"? Нет, не знаю. Ты мне этого не сказал, а я не телепат, и сам знать не могу. :)
а я - нет,
Что "нет"? Ты не знаешь, что сам же подразумевал? :) Если так, то я предлагаю просто исключить из текста РЭ эту фразу, если даже написавший ее не знает, что имел в виду... :)
но ты почему-то ждёшь от меня понятный текст про твой хард/софт :-)
Я не жду от тебя никакого текста про хард/софт. Ты, очевидно, меня с кем-то путаешь. :) Я жду от тебя ответа на вопрос, что ты подразумевал под словом "того", когда писал "жирную фразу". Это не вопрос о харде/софте, это вопрос о твоих мыслях (а ты не робот!).
follow-up: 27 comment:26 by , 4 months ago
Replying to alx:
Replying to Vladimir:
Я понял это так, что жирная фраза тебе непонятная, тогда как, по-твоему, надо написать,
чтобы всем было понятно?
Уточни, пожалуйста, что в этой фразе ты подразумевал под словом "того".
В комм-6 было:
""... PCRE2 имеет ряд полезных возможностей, например условная подстановка, ... и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой."
Что тут непонятно:
"...имеет ряд полезных возможностей ...и, кроме того, ряд конфигурационных параметров ...",
т.е. кроме "ряда полезных возможностей".
Если это тебе непонятно, то предложи более понятный вариант для описания своей разработки.
Я и не обещал предложить тебе какой-то вариант исправления!
Но если что-то критикуешь, то сразу предлагай свой вариант для обсуждения - это конструктивно.
Я же описываю не свою разработку а твою, которую пока плохо знаю...
И вообще, я же не сам по своей инициативе решил указать тебе на недостатки,
Это хорошо, но, если ты видишь недостаток, то, скорее всего, знаешь, как правильно описывать твою разработку.
я это сделал по твоей собственной просьбе (просьба была в comment:6)! Ты высказал просьбу (причем было непонятно, кому она адресована,
Странно: все комменты идут по поводу твоего текста в описании тикета и очевидно, что я обращаюсь к тебе, как Автору харда и софта.
С такими запросами тебе следовало бы сразу в comment:6 указать все условия - и что обязательно должен быть вариант исправления, и т.д, и т.п...
Я полагал, что сразу предложить "вариант исправления" очевиден, ну или ответить "Не знаю",
и тогда я бы пошёл искать других знатоков :-)
А предложить вариант исправления я (пока) не могу. Чтобы предложить вариант формулировки, надо сначала знать ту мысль, которую эта формулировка должна выражать. А я пока этой мысли не знаю, поэтому и предложить вариант не могу.
Разве ты не знаешь и не можешь предложить описание того, что ты сам сотворил в своей разработке? :-)
Тогда как же я смогу это сделать правильно, если первый раз читаю про это в описании тикета? :-)
- ты же хорошо знаешь эту тему,
Какую "эту тему"?
В данном случае у нас тема одна - описание Этого тикета!
Я попытался предложить свой вариант, но ты его отвергаешь, не предлагая ничего конкретного в ответ.
Я жду простой и конструктивный диалог: я предлагаю вариант описания твоей разработки,
а ты в ответ предлагаешь другой вариант, я в ответ предлагаю изменение,
а ты соглашаешься или отвергаешь и предлагаешь ещё более хороший вариант - так и рождается Истина! :-)
И тебе не надо знать мои часто неправильные мысли по незнанию - пиши сразу правильный вариант.
Вот в Вики статьях у тебя это хорошо получается!
follow-up: 28 comment:27 by , 4 months ago
Replying to Vladimir:
В комм-6 было:
""... PCRE2 имеет ряд полезных возможностей, например условная подстановка, ... и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой."
Что тут непонятно:
Что тут, на мой взгляд, непонятно, я написал в comment:10 две недели назад:
Кроме чего "того"?
Вот это и было непонятно - что ты подразумевал под словом "того".
Твое предложение, фрагменты которого ты процитировал выше, сложное. Оно составлено из нескольких простых, у которых разные подлежащие. То есть в этих простых частях, из которых составлено твое предложение, речь идет о разных предметах. То, что ты в своей цитате выделил жирным шрифтом, написано о PCRE2. А слова "кроме того" написаны в другой части сложного предложения, в которой уже говорится о ряде конфигурационных параметров, а не о PCRE2. О том, что конфигурационные параметры тоже имеют ряд полезных возможностей (кроме которых еще и поддерживают специальную форму записи), ты в comment:6 не написал.
Если это тебе непонятно, то предложи более понятный вариант для описания своей разработки.
Могу предложить разделить это сложное предложение на несколько простых (я давно заметил, что ты любишь писать очень длинные и очень сложные предложения, их бывает трудно понять). Например так:
PCRE2 имеет ряд полезных возможностей, например условная подстановка, благодаря которой можно одним регулярным выражением с заменой выполнять разные подстановки в зависимости от исходного номера:
/^1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555}
(см. в regex101).
Некоторые конфигурационные параметры тоже имеют ряд полезных возможностей. Кроме того, некоторые из них поддерживают специальную форму записи - регулярное выражение с заменой.
Такой вариант, как минимум, более понятно выражает твою мысль.
Тут правда возникает вопрос уже к самой твоей мысли: а что, поддержка специальной формы записи - регулярное выражение с заменой - не является полезной возможностью? Это, получается, бесполезная возможность? :)
Я и не обещал предложить тебе какой-то вариант исправления!
Но если что-то критикуешь, то сразу предлагай свой вариант для обсуждения - это конструктивно.
Ты так говоришь, как будто я сам, по своей собственной инициативе решил покритиковать твой текст. Но это же не так! Ты сам меня просил об этом! Я покритиковал в ответ на твою просьбу! Когда и если я что-то критику в РЭ по собственной инициативе, я всегда стараюсь что-то предлагать - это ты можешь видеть в созданных мной тикетаах типа "дефект" или "улучшение".
А твои обсуждения я уже знаю по другим тикетам, например #1298. В твоем понимании "обсуждение" - это когда я все делаю за тебя. :)
Я же описываю не свою разработку а твою, которую пока плохо знаю...
Если ты что-то плохо знаешь, или даже совсем не знаешь, ты всегда можешь спросить. На вопросы о работе разработанных мной устройств я всегда стараюсь отвечать.
если ты видишь недостаток, то, скорее всего, знаешь, как правильно описывать твою разработку.
Нет, конечно! :). Если я попробовал суп, и он невкусный, это не означает, что я, скорее всего, знаю, как приготовить его вкусно. Скорее всего, не знаю. :) У каждого своя работа, каждый профессионал в своем деле...
Ты высказал просьбу (причем было непонятно, кому она адресована,
Странно: все комменты идут по поводу твоего текста в описании тикета и очевидно, что я обращаюсь к тебе, как Автору харда и софта.
Мне это очевидно не было. Этот комментарий, в отличие от всех предыдущих, не был ответом на мой текст. Я в нем ни разу не упоминаюсь. Зато упоминается другой пользователь - @san, которого ты добавил в CC. Поэтому я был уверен, что комментарий обращен к нему. Засомневаться в этом меня заставили только слова "твои скриншоты"...
Если все комментарии адресованы именно мне, зачем тогда ты добавил сюда @san?
Разве ты не знаешь и не можешь предложить описание того, что ты сам сотворил в своей разработке? :-)
Что я сотворил в своей разработке, я знаю. Описание того, что я сотворил в моей разработке, написано в описании этого тикета четыре недели назад.
Тогда как же я смогу это сделать правильно, если первый раз читаю про это в описании тикета? :-)
Во-первых, если прочитать один раз тебе недостаточно, что мешает прочитать больше одного раза? Разве тебя кто-то ограничивает в количестве прочтений?
Во-сторых, если что-то в описании тикета непонятно, ты всегда можешь задать вопрос, попросить что-то разъяснить или уточнить.
Я попытался предложить свой вариант, но ты его отвергаешь,
По-моему ты мне никаких вариантов не предлагал (и не должен был предлагать - я не просил предлагать мне варианты), а я никаких вариантов не отвергал. По-моему ты меня с кем-то путаешь... :)
Я жду простой и конструктивный диалог: я предлагаю вариант описания твоей разработки,
Я не разработчик РЭ. Мне не надо предлагать варианты.
а ты в ответ предлагаешь другой вариант,
Меня никто не просил предлагать каких-либо вариантов (за исключением той фразы из comment:6, которая была мне непонятна, и альтернативный вариант формулировки которой я уже предложил). Если ты ждешь от меня что-то, о чем не просил - то напрасно. Я не телепат, и не могу знать, что ты что-то от меня ждешь. :)
я в ответ предлагаю изменение, а ты соглашаешься или отвергаешь и предлагаешь ещё более хороший вариант - так и рождается Истина! :-)
Меня такой вариант не устраивает. Я - не твой начальник. Мне не надо предлагать никаких изменений. Тебе не требуется моего согласия на внесение изменений в РЭ. А я не имею полномочий запретить тебе какие-либо изменения вносить.
Я жду иного сценария работы. Я, создавая тикет, описываю в нем, какие изменения я сделал в разработанном мной устройстве и предлагаю отразить их в РЭ. Ты реализуешь мое предложение и закрываешь тикет. Это в идеале - когда все написанное мной понятно. Если тебе что-то в описании сделанных мной изменений непонятно, ты просишь пояснений, и я их тебе даю. Если тебе требуется какая-то дополнительная информация о работе разработанного мной устройства, ты спрашиваешь о ней, и я по возможности отвечаю.
И тебе не надо знать мои часто неправильные мысли по незнанию
Ты же сам просил меня сформулировать понятно твою мысль! А как я могу сформулировать понятно то, чего не знаю? По-моему это невозможно. Не проси меня переформулировать твои мысли - и тогда мне не надо будет их знать...
пиши сразу правильный вариант.
Разработчик РЭ - ты. По-моему писать РЭ - твоя работа, а не моя.
follow-up: 29 comment:28 by , 4 months ago
Replying to alx:
Replying to Vladimir:
В комм-6 было:
""... PCRE2 имеет ряд полезных возможностей, например условная подстановка, ... и, кроме того, ряд конфигурационных параметров поддерживает специальную форму записи - регулярное выражение с заменой."
Что тут непонятно:
Что тут, на мой взгляд, непонятно, я написал в comment:10 две недели назад:
Кроме чего "того"?
Вот это и было непонятно - что ты подразумевал под словом "того".
"того" подразумевалось это: "ряд полезных возможностей, например, условная подстановка" :-)
Если это тебе непонятно, то предложи более понятный вариант для описания своей разработки.
Могу предложить разделить это сложное предложение на несколько простых... Например так:
PCRE2 имеет ряд полезных возможностей,
"PCRE2" в тексте РЭ пока ни разу не упоминалось, а вот PCRE записано 7 раз,
тогда надо везде записать "PCRE2" ? Или как-то пояснить отличие от PCRE ?
Или цифра 2 - это твоя опечатка? (попутно: две косые черты перед PCRE что означают/обозначают? ).
например, условная подстановка, благодаря которой можно одним регулярным выражением с заменой выполнять разные подстановки в зависимости от исходного номера:
/^1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555}
(см. в regex101).
Некоторые конфигурационные параметры тоже имеют ряд полезных возможностей. Кроме того, некоторые из них поддерживают специальную форму записи - регулярное выражение с заменой.
Такой вариант, как минимум, более понятно выражает твою мысль.
Мои мысли о том, чего глубоко не знаю - это гипотезы, предположения, фантазии :-)
Лучше и точнее Автора харда и софта, либо того кто давно и тесно работает с этим хард-софтом,
вряд ли кто скажет... :-)
Тут правда возникает вопрос уже к самой твоей мысли: а что, поддержка специальной формы записи - регулярное выражение с заменой - не является полезной возможностью? Это, получается, бесполезная возможность? :)
Я это достоверно не могу знать - не знаю всех особенностей и возможностей:
вот ты напечатал правильно - теперь и я и все юзеры будут знать! :-)
Ты так говоришь, как будто я сам, по своей собственной инициативе решил покритиковать твой текст. Но это же не так! Ты сам меня просил об этом! Я покритиковал в ответ на твою просьбу! Когда и если я что-то критику в РЭ по собственной инициативе, я всегда стараюсь что-то предлагать - это ты можешь видеть в созданных мной тикетах типа "дефект" или "улучшение".
Так я же сам попросил в надежде, что ты не только покритикуешь, но и подскажешь, как лучше по-твоему :-)
Вот только в комм-27 ты дал конкретную подсказку, которая, наверное, в сотни раз короче, чем текст во всех 28-и комментах :-)
А твои обсуждения я уже знаю по другим тикетам, например #1298. В твоем понимании "обсуждение" - это когда я все делаю за тебя. :)
Если я не знаю или не могу хорошо изложить, то какую-то часть текста надо бы изложить Автору хард-софта,
иначе будет моя выдумка, вымысел, которые не соответствуют истине вот и получаются десятки комментов :-)
Я же описываю не свою разработку а твою, которую пока плохо знаю...
Если ты что-то плохо знаешь, или даже совсем не знаешь, ты всегда можешь спросить. На вопросы о работе разработанных мной устройств я всегда стараюсь отвечать.
Я иногда предлагаю свой текст и всегда подразумеваю вопрос к тебе - правильно, ли это
и часто получаю ответ, что мой текст плохой, однако получить правильный текст не всегда сразу получается -
в данном случае дошло до 27 комментов...
если ты видишь недостаток, то, скорее всего, знаешь, как правильно описывать твою разработку.
Нет, конечно! :).
Если уж Автор хард-софта не знает, то как может знать не автор и не знаток данного харда-софта? :-)
Автор что-то хорошее сотворил, но понятно для любого юзера это не изложил,
то как может это изложить не автор и даже не юзер нашей ЦСП это изложить? :-)
Этот комментарий, в отличие от всех предыдущих, не был ответом на мой текст. Я в нем ни разу не упоминаюсь.
Потому, что ты автор текста тикета - к тебе и относятся все комменты :-)
Зато упоминается другой пользователь - @san, которого ты добавил в CC.
А это чтобы другой Знаток мог помочь тебе и мне хорошо изложить текст :-)
"Одна голова - хорошо, а 2-3 Лучше!" :-)
Разве ты не знаешь и не можешь предложить описание того, что ты сам сотворил в своей разработке? :-)
Что я сотворил в своей разработке, я знаю. Описание того, что я сотворил в моей разработке, написано в описании этого тикета четыре недели назад.
Это слишком краткое описание, адресованное мне, как будто я Большой Знаток, а лучше бы это было адресовано
в расчёте на начинающего юзера, как это ты отлично делаешь в своих вики-статьях.
Во-вторых, если что-то в описании тикета непонятно, ты всегда можешь задать вопрос, попросить что-то разъяснить или уточнить.
Да мне всё мало понятно, т.к. не было регулярного изложения, как в вики-статьях...
Я попытался предложить свой вариант, но ты его отвергаешь,
Я жду простой и конструктивный диалог: я предлагаю вариант описания твоей разработки,
Я не разработчик РЭ. Мне не надо предлагать варианты.
Я не знаю, как правильно изложить твои технические решения в РЭ, поэтому пытаюсь сочинить
и удостовериться, что это хорошо получилось - так и получаются десятки комментов...
Меня никто не просил предлагать каких-либо вариантов Если ты ждешь от меня что-то, о чем не просил - то напрасно.
Т.е. ты согласен, чтобы твоя разработка была описана плохо (а хорошо у меня пока не получается)
и после публикации сотни юзеров надоедали бы тебе вопросами, после прочтения плохого текста? :-)
Странное желание :-) Лучше совместно сделать хорошо и жить спокойно без вопросов от юзеров.
Я жду иного сценария работы. Я, создавая тикет, описываю в нем, какие изменения я сделал в разработанном мной устройстве и предлагаю отразить их в РЭ. Ты реализуешь мое предложение и закрываешь тикет.
Я каждый раз пытаюсь реализовать, но ты же видишь, что моего опыта в этом конкретном вопросе у меня не хватает, иначе я бы не печатал уже коммент-28: значит, текст тикета недостаточно конкретный для меня и РЭ...
Это в идеале - когда все написанное мной понятно. Если тебе что-то в описании сделанных мной изменений непонятно, ты просишь пояснений, и я их тебе даю. Если тебе требуется какая-то дополнительная информация о работе разработанного мной устройства, ты спрашиваешь о ней, и я по возможности отвечаю.
У меня может быть очень простой вопрос:
"Как правильно изложить предложение тикета в РЭ, чтобы было понятно юзеру?" :-)
И тебе не надо знать мои часто неправильные мысли по незнанию
Ты же сам просил меня сформулировать понятно твою мысль! А как я могу сформулировать понятно то, чего не знаю? По-моему это невозможно. Не проси меня переформулировать твои мысли - и тогда мне не надо будет их знать...
Всё проще: излагай сразу, как в вики-статьях, т.е. не для меня, а для малоопытного юзера :-)
пиши сразу правильный вариант.
Разработчик РЭ - ты. По-моему писать РЭ - твоя работа, а не моя.
Так я и пишу, но плохо же получается, вот и приходится тебе печатать уйму комментов
и в конце-концов - хороший текст :-).
Когда я сам писал РЭ на свои разработки, то я и не спрашивал никого,
а просто описывал для юзеров то, что я сам сотворил, но в данном случае,
хард и софт не мои, а когда меня уговаривали на разработку РЭ,
то обещали всемерную помощь истинных Авторов-Разработчиков харда и софта.
Могу, конечно, печатать по своему недоразумению, но тогда ты опять будешь переоткрывать
тикет, пока всё-таки не напишешь несколько правильных строчек...
ИМХО, лучше уж сразу напечатать в тикете текст на 1-2...абзаца,
пригодный для вставки в РЭ - на мой взгляд, это будет гораздо короче и быстрее :-)
comment:29 by , 4 months ago
Replying to Vladimir:
"PCRE2" в тексте РЭ пока ни разу не упоминалось, а вот PCRE записано 7 раз,
тогда надо везде записать "PCRE2" ?
Или как-то пояснить отличие от PCRE ?
Ты написал к тикету 13 комментариев, но не прочитал его описание? :) Думаю, пришло время прочитать.
Или цифра 2 - это твоя опечатка?
В процитированном тобой фрагменте comment:27 опечаток нет.
(попутно: две косые черты перед PCRE что означают/обозначают? ).
Стиль шрифта italic - см. WikiFormatting.
Так я же сам попросил в надежде, что ты не только покритикуешь, но и подскажешь, как лучше по-твоему :-)
Вот только в комм-27 ты дал конкретную подсказку, которая, наверное, в сотни раз короче, чем текст во всех 28-и комментах :-)
Так ты же сам пояснил свою мысль только в commrnt:26! Как только ты это сделал, так я сразу в comment:27 и предложил альтернативную формулировку, которая, по моему мнению, выражает твою мысль более понятно. Как я мог предложить какие-либо альтернативные формулировки мысли, пока эта мысль была мне непонятна? Это был риторический вопрос - никак не мог.
Если я не знаю или не могу хорошо изложить, то какую-то часть текста надо бы изложить Автору хард-софта,
иначе будет моя выдумка, вымысел, которые не соответствуют истине вот и получаются десятки комментов :-)
По-моему, если не знаешь, то надо узнать.
Если уж Автор хард-софта не знает, то как может знать не автор и не знаток данного харда-софта? :-)
Конструктор хард-софта знает как конструировать хард-софт. Техрайтер знает как это описывать. Повар знает как варить суп. У каждого своя работа. Это называется "разделение труда".
Автор что-то хорошее сотворил, но понятно для любого юзера это не изложил,
то как может это изложить не автор и даже не юзер нашей ЦСП это изложить? :-)
Автор описывает работу своего творения техрайтеру, а техрайтер излагает это понятно для любого юзера путем написания соответствующего текста. По-моему так. (с) Винни Пух :) А наша ЦСП здесь ни при чем - я тоже ей ни разу не пользовался, и никогда не видел даже...
Потому, что ты автор текста тикета - к тебе и относятся все комменты :-)
Удивительное утверждение... :) По-моему такой вывод ниоткуда не следует.
Это слишком краткое описание,
Если ты считаешь, что в нем чего-то не хватает, скажи, чего. Я постараюсь дополнить.
адресованное мне, как будто я Большой Знаток, а лучше бы это было адресовано
в расчёте на начинающего юзера,
Оно адресовано тебе, как будто ты - разработчик РЭ. По-моему я адресовал правильно.
Во-вторых, если что-то в описании тикета непонятно, ты всегда можешь задать вопрос, попросить что-то разъяснить или уточнить.
Да мне всё мало понятно,
Начинай задавать вопросы.
Т.е. ты согласен, чтобы твоя разработка была описана плохо
Нет, не согласен. Насколько я вижу, моя разработка еще не описана - тикет не закрыт, и в опубликованной недавно редакции 62 РЭ предложения тикета не выполнены.
Странное желание :-)
Странный комментарий. :) Я не желал чтобы моя разработка не была описана. Напротив, еще четыре недели назад я сам предложил ее описать.
Я каждый раз пытаюсь реализовать, но ты же видишь, что моего опыта в этом конкретном вопросе у меня не хватает,
Я не твой начальник и не HR чтобы оценивать твой опыт. Если твой начальник поручил тебе эту работу, значит он считает, что твоего опыта достаточно для ее выполнения.
иначе я бы не печатал уже коммент-28: значит, текст тикета недостаточно конкретный для меня и РЭ...
Напиши, какой именно конкретики не хватает, я постараюсь ее дать.
У меня может быть очень простой вопрос:
"Как правильно изложить предложение тикета в РЭ, чтобы было понятно юзеру?" :-)
Я - конструктор. Этот вопрос вне моей компетенции.
Всё проще: излагай сразу, как в вики-статьях, т.е. не для меня, а для малоопытного юзера :-)
Мне кажется, что я именно так и сделал - сразу все изложил в описании тикета. Неужели ты думаешь, что я осознанно и намеренно принял решение о чем-то важном и существенном в своем изложении умолчать? Мне, конечно, может казаться неправильно (я не Господь Бог). Я мог в своем изложении случайно что-то упустить. Это вполне объяснимо: в моей-то голове все детали о работе моей разработки есть, а в голову других людей, где этого нет, залезть трудно... Вот поэтому и правильно, когда руководство пишет другой человек - он скорее увидит пробелы в изложении.
Разработчик РЭ - ты. По-моему писать РЭ - твоя работа, а не моя.
Так я и пишу, но плохо же получается, вот и приходится тебе печатать уйму комментов
и в конце-концов - хороший текст :-).
Вот и хорошо!
follow-ups: 31 32 comment:30 by , 4 months ago
comment:31 by , 4 months ago
follow-up: 33 comment:32 by , 4 months ago
Replying to Vladimir:
/5(\d{3})/6\1 тут надо так: /5(\d{3})/6$1 -это будет правильно?
Ровно эту замену я привел тебе в качестве примера того, как надо заменить, в comment:7 три недели назад. Зачем же ты спрашиваешь, правильно ли это? Неужели ты думаешь, что я мог намеренно привести тебе неправильный пример?
follow-up: 34 comment:33 by , 4 months ago
Replying to alx:
Replying to Vladimir:
/5(\d{3})/6\1 тут надо так: /5(\d{3})/6$1 -это будет правильно?
Ровно эту замену я привел тебе в качестве примера того, как надо заменить, в comment:7 три недели назад. Зачем же ты спрашиваешь, правильно ли это? Неужели ты думаешь, что я мог намеренно привести тебе неправильный пример?
Засомневался, я во всём сомневаюсь :-)
А ты мог ответить короче: -"Да" :-)
Спасибо за ответ, теперь-то я уже уверен, что так и надо заменять :-)
comment:34 by , 4 months ago
Replying to Vladimir:
Неужели ты думаешь, что я мог намеренно привести тебе неправильный пример?
Засомневался, я во всём сомневаюсь :-)
А ты мог ответить короче: -"Да" :-)
Я мог ответить короче, а мог ответить длиннее. В результате я выбрал "золотую середину". :)
Спасибо за ответ, теперь-то я уже уверен, что так и надо заменять :-)
Я бы на твоем месте не был так уверен... Если ты допускаешь, что я в тот раз злонамеренно привел тебе неверный пример, то ведь я и сейчас мог соврать о том, что этот пример - правильный... :)
follow-ups: 36 37 comment:35 by , 4 months ago
Resolution: | → готово |
---|---|
Status: | new → closed |
Replying to alx:
Предлагаю в РЭ аппаратуры MC04-DSL-3U:
- указать, что используются именно PCRE2 с расширенной подстановкой (потому что расширенная подстановка дает дополнительные возможности, как в приведенном выше примере), дать вот эту ссылку на описание синтаксиса;
Указал и дал в РЭ-64 от 02.08.2024
- во всех описаниях и примерах строк замены заменить комбинации "бэкслэш-цифра" на "доллар-цифра";
Заменил.
- описать, при каких условиях для обратной совместимости с ранее сделанными настройками будет использоваться PCRE вместо PCRE2 (см. выше);
Описал.
- описать новый конфигурационный параметр "режим PCRE";
Описал.
- описать контроль синтаксиса регулярных выражений в веб-интерфейсе.
Описал.
После публикации РЭ-64 проверь пункты 7.1.2 и 7.12 - всё ли я правильно описал?
(на мой взгляд - всё и правильно, а на твой? :-) ).
comment:36 by , 4 months ago
Replying to Vladimir:
После публикации РЭ-64 проверь пункты 7.1.2 и 7.12 - всё ли я правильно описал?
Почему бы тебе не проверить это до публикации РЭ-64?
(на мой взгляд - всё и правильно, а на твой? :-) ).
У меня никакого взгляда нет и быть не может, так как РЭ-64 еще не опубликовано, и взглянуть на него я не могу даже при огромном желании. :)
follow-up: 38 comment:37 by , 7 weeks ago
Replying to Vladimir:
Предлагаю в РЭ аппаратуры MC04-DSL-3U:
- указать, что используются именно PCRE2 с расширенной подстановкой (потому что расширенная подстановка дает дополнительные возможности, как в приведенном выше примере), дать вот эту ссылку на описание синтаксиса;
Указал и дал в РЭ-64 от 02.08.2024
Где (на какой странице, в каком абзаце, в какой строчке) указана эта ссылка?
Где (на какой странице, в каком абзаце, в какой строчке) указано об использовании PCRE2 с расширенной подстановкой?
А, например, на страницах 247, 266 я по-прежнему вижу утверждение о том, что используется PCRE...
- описать, при каких условиях для обратной совместимости с ранее сделанными настройками будет использоваться PCRE вместо PCRE2 (см. выше);
Описал.
Здесь у тебя ошибка. Ты пишешь: "если используется регулярное выражение с заменой, и в строке замены имеются ссылки со "старым" синтаксисом...", и далее в скобках почему-то указываешь новый синтаксис (PCRE2) - "$1, $2, $3"...
- описать новый конфигурационный параметр "режим PCRE";
Описал.
На странице 411 ты написал: "...выбор PCRE или PCRE2 выполняется автоматически
по описанным выше правилам;". При этом, насколько я вижу, эти правила написаны на странице 246. Да, формально все верно - страница 246 находится выше чем страница 411. Но не слишком ли много читателю предлагается листать текст вверх (165 страниц!) чтобы найти и прочитать эти правила? :)
follow-up: 39 comment:38 by , 7 weeks ago
Replying to alx:
Replying to Vladimir:
Предлагаю в РЭ аппаратуры MC04-DSL-3U:
- указать, что используются именно PCRE2 с расширенной подстановкой (потому что расширенная подстановка дает дополнительные возможности, как в приведенном выше примере), дать вот эту ссылку на описание синтаксиса;
Что-то описывать или указывать про PCRE2 я никак не мог, т.к. ничего не знал про это,
поэтому у меня до РЭ-59 (декабрь 2023) была указана только ссылка:
"Описание вкладки Ethernet в режиме полная доступно по ссылке: https://trac.adc-line.ru/sw-01/wiki/Ethernet (расширенные настройки)". А по твоей инициативе я вставил текст из этой ссылки в РЭ-59.
Про синтаксис я, наверное, по совету san или от тебя вставил ссылку:
"– Описание синтаксиса на русском: http://www.shtogrin.com/library/web/pcre/doc/pcre/",
т.к. не все юзеры хорошо знают английский язык.
Тогда вопрос к тебе: как ты думаешь, что лучше - оставить ссылку с русскоязычным текстом,
или заменить ей на твою ссылку из этого тикета?
Я думаю, что твою ссылку юзеры-знатоки запросто найдут сами, а вот ссылку с хорошим переводом на русский,
наверное, найти труднее.
Указал и дал в РЭ-64 от 02.08.2024
Где (на какой странице, в каком абзаце, в какой строчке) указана эта ссылка?
Где (на какой странице, в каком абзаце, в какой строчке) указано об использовании PCRE2 с расширенной подстановкой?
Поскольку я про PCRE2 ничего не знал и толком не знаю, то я просто скопировал и вставил текст
из твоей вики статьи в Приложение-15 в самом конце РЭ и если там чего-то не было, то и в РЭ нет :-)
Вот поэтому я долго не хотел вставлять полный текст из твоей вики-статьи,
который для меня является первоисточником, а в РЭ - копия про то, чего я не знаю,
даже если и прочитал: "Нельзя объять необъятное!", к тому же для меня эти знания бесполезные :-)
А, например, на страницах 247, 266 я по-прежнему вижу утверждение о том, что используется PCRE...
Ты бы лучше писал конкретно, что именно сделать: заменить существующие ссылки ни новую из этого тикета?
Правильно или нет, но ссылки на этих страницах я заменил в РЭ-66 на твои из описания этого тикета.
- описать, при каких условиях для обратной совместимости с ранее сделанными настройками будет использоваться PCRE вместо PCRE2 (см. выше);
Описал.
Здесь у тебя ошибка. Ты пишешь: "если используется регулярное выражение с заменой, и в строке замены имеются ссылки со "старым" синтаксисом...", и далее в скобках почему-то указываешь новый синтаксис (PCRE2) - "$1, $2, $3"...
Ну, уж написал бы конкретно сразу правильный синтаксис, я же не помню старый синтаксис (и новый тоже :-) ).
- описать новый конфигурационный параметр "режим PCRE";
Описал.
На странице 411 ты написал: "...выбор PCRE или PCRE2 выполняется автоматически
по описанным выше правилам;". При этом, насколько я вижу, эти правила написаны на странице 246. Да, формально все верно - страница 246 находится выше чем страница 411. Но не слишком ли много читателю предлагается листать текст вверх (165 страниц!) чтобы найти и прочитать эти правила? :)
В РЭ-64 стр.246 - это "7.1.3 Алгоритм поиска канального окончания при входящем вызове"
и там нет правил, а вот на стр.266 есть ссылка на синтаксис:
"Синтаксис описан здесь: http://www.shtogrin.com/library/web/pcre/doc/pcre/.",
которую я в РЭ-66 заменил на "https://www.pcre.org/current/doc/html/pcre2syntax.html"
и эту же ссылку ты предлагаешь вставить на стр.411? Но там не правила выбора, а синтаксис...
Может быть мне лучше удалить фразу "...по описанным выше правилам" ?
Кстати: фраза "...выбор PCRE или PCRE2 выполняется автоматически по описанным выше правилам;"
есть ещё и на стр.245 и там-то правила описаны - в РЭ-66 я уже вставил гиперссылку:
"...по описанным выше правилам (см. стр.245)"
follow-up: 40 comment:39 by , 7 weeks ago
Replying to Vladimir:
Что-то описывать или указывать про PCRE2 я никак не мог,
То есть получается, что когда в comment:35 ты писал "Указал и дал в РЭ-64", ты сознательно писал неправду? Могу я поинтересоваться, зачем?
Тогда вопрос к тебе: как ты думаешь, что лучше - оставить ссылку с русскоязычным текстом,
или заменить ей на твою ссылку из этого тикета?
Что я думаю, я написал еще три месяца назад в описании тикета.
Ты бы лучше писал конкретно, что именно сделать: заменить существующие ссылки ни новую из этого тикета?
Что именно я предлагаю сделать, я написал 3 месяца назад в описании тикета. Там написано недостаточно конкретно?
Ну, уж написал бы конкретно сразу правильный синтаксис,
Правильный синтаксис я написал 3 месяца назад в описании тикета. Там написано недостаточно конкретно?
я же не помню старый синтаксис
Это же написано в том самом РЭ, которое ты разрабатываешь! :)
На странице 411 ты написал: "...выбор PCRE или PCRE2 выполняется автоматически
по описанным выше правилам;". При этом, насколько я вижу, эти правила написаны на странице 246.
В РЭ-64 стр.246 - это "7.1.3 Алгоритм поиска канального окончания при входящем вызове"
и там нет правил,
А на какой странице эти правила?
а вот на стр.266 есть ссылка на синтаксис:
"Синтаксис описан здесь: http://www.shtogrin.com/library/web/pcre/doc/pcre/.",
которую я в РЭ-66 заменил на "https://www.pcre.org/current/doc/html/pcre2syntax.html"
и эту же ссылку ты предлагаешь вставить на стр.411?
Нет, этого я тебе не предлагал.
Может быть мне лучше удалить фразу "...по описанным выше правилам" ?
На твое усмотрение. Разработчик РЭ - ты.
follow-up: 41 comment:40 by , 7 weeks ago
Replying to alx:
Replying to Vladimir:
Что-то описывать или указывать про PCRE2 я никак не мог,
То есть получается, что когда в comment:35 ты писал "Указал и дал в РЭ-64", ты сознательно писал неправду? Могу я поинтересоваться, зачем?
Потому, что я скопировал авторский текст из твоей вики и решил, что это правда.
Если я не всё скопировал то подскажи, что ещё надо добавить/убавить...
В РЭ-64 на стр.243 был текст:
"В плате VE в качестве шаблонов номеров применяются perl-совместимые регулярные выражения PCRE2 (реализованные библиотекой libpcre2) имеют ряд полезных возможностей, например, условная подстановка, благодаря которой можно одним регулярным выражением с заменой выполнять разные подстановки в зависимости от исходного номера:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1 )."
Разве это не означает, что используется "расширенная подстановка" ?
Если этого недостаточно, то в РЭ-66 я добавил твои новые ключевые слова:
"В плате VE в качестве шаблонов номеров применяются perl-совместимые регулярные выражения PCRE2 (реализованные библиотекой libpcre2) с расширенной подстановкой и имеют ряд полезных возможностей, например, условная подстановка, благодаря которой можно одним регулярным выражением с заменой выполнять разные подстановки в зависимости от исходного номера: /1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1 )."
Дополнительно я добавил твою ссылку из Тикета в "7.1.2 Регулярные выражения (описание шаблонов номеров)"
"Подробнее познакомиться с регулярными выражениями можно по следующим ссылкам:
– Описание синтаксиса на английском: https://www.pcre.org/current/doc/html/pcre2syntax.html
– Описание синтаксиса на русском: http://www.shtogrin.com/library/web/pcre/doc/pcre/
– Полезный сайт на английском http://www.rexegg.com/"
Ну, уж написал бы конкретно сразу правильный синтаксис,
Правильный синтаксис я написал 3 месяца назад в описании тикета. Так написано недостаточно конкретно?
Да, действительно, это есть, а напомнить мне это в комменте-37 тебе было очень-очень трудно? :-)
Вместо напоминания из 6 знаков много-много слов :-) "Краткость - сестра таланта!" :-)
В РЭ-66 я уже скопировал и вставил старые знаки: "(\1, \2, \3 и т.д.) "
Может быть мне лучше удалить фразу "...по описанным выше правилам" ?
На твое усмотрение. Разработчик РЭ - ты.
В РЭ-66 я добавил гиперссылку на фразу: "Выбор используемой библиотеки" (стр.245),
теперь будет конкретно и удобно.
На мой взгляд, я уже учёл всё, что ты хотел и тикет закрою,
но готов исправить в любой момент, если ты заметишь погрешность :-)
Тикет-то, оказывается, был закрыт ещё 2 августа после того, как я вставил твои вики0статью. :-)
Если что не так, как надо, то пиши и я исправлю!
follow-up: 42 comment:41 by , 7 weeks ago
Replying to Vladimir:
Потому, что я скопировал авторский текст из твоей вики и решил, что это правда.
Хм... Ты написал неправду, потому что решил, я написал правду... Хорошо, спасибо за ответ. Буду над ним думать...
Если я не всё скопировал то подскажи, что ещё надо добавить/убавить...
Я понятия не имею, что ты и откуда скопировал, все ли или не все. По-моему тебе это лучше знать...
В РЭ-64 на стр.243 был текст:
"В плате VE в качестве шаблонов номеров применяются perl-совместимые регулярные выражения PCRE2 (реализованные библиотекой libpcre2) имеют ряд полезных возможностей, например, условная подстановка, благодаря которой можно одним регулярным выражением с заменой выполнять разные подстановки в зависимости от исходного номера:
/1(?:(222)|(333)|(444))$/89${1:+777}${2:+666}${3:+555} (см. в https://regex101.com/r/tNULKo/1 )."
Разве это не означает, что используется "расширенная подстановка" ?
Да, действительно, подстановка, которую ты привел в качестве примера, может работать только в расширенном режиме, и читатель может косвенно догадаться, что раз такое работает, значит используются именно расширенные подстановки. Но в описании тикета я же предлагал указать это прямо, а не давать намек, по которому пользователь мог бы косвенно об этом догадываться! Прямого указания, что используются расширенные подстановки, на странице 243 я не вижу. Поиск строки "расшир" на странице 243 не дает ни одного результата.
Правильный синтаксис я написал 3 месяца назад в описании тикета. Так написано недостаточно конкретно?
Да, действительно, это есть, а напомнить мне это в комменте-37 тебе было очень-очень трудно? :-)
Не очень-очень трудно, а совершенно невозможно. Я никак не мог в comment:37 ответить на твой вопрос из comment:38, так как comment:38 был написан позже чем comment:37, то есть на момент написания comment:37 он еще не существовал. Я не контрамот.
А самому без дополнительных напоминаний прочитать описание тикета очень-очень трудно? :)
Вместо напоминания из 6 знаков много-много слов :-) "Краткость - сестра таланта!" :-)
Если тебе не нравится длина моих комментариев - закрывай тикеты так, чтобы у меня не было причин писать комментарии. :)
follow-up: 43 comment:42 by , 7 weeks ago
Replying to alx:
Replying to Vladimir:
Потому, что я скопировал авторский текст из твоей вики и решил, что это правда.
Хм... Ты написал неправду, потому что решил, я написал правду... Хорошо, спасибо за ответ. Буду над ним думать...
Я недостаточно глубоко знаю твои разработки, поэтому я, как правило беру за основу твои тексты или от san.
Даже если я где-то написал неправду, то это было неумышленно, т.к. возможно по ошибке считал это правдой.
Если я не всё скопировал то подскажи, что ещё надо добавить/убавить...
Я понятия не имею, что ты и откуда скопировал, все ли или не все. По-моему тебе это лучше знать...
Тебе и не надо знать "что и откуда" - ты же читаешь мои тексты про своё изделие и можешь уверенно сказать, правда это или ложь, а если это ложь, то можешь подсказать где лежит правда или написать свою правду :-)
Считай, что я про твои изделия ничего не знаю :-)
Да, действительно, подстановка, которую ты привел в качестве примера, может работать только в расширенном режиме, и читатель может косвенно догадаться, что раз такое работает, значит используются именно расширенные подстановки. ....
В РЭ-66 в "7.1.2 Регулярные выражения (описание шаблонов номеров)" я уже указал прямо:
"...применяются perl-совместимые регулярные выражения PCRE2 (реализованные библиотекой libpcre2) с расширенной подстановкой и имеют ряд полезных возможностей..."
Правильный синтаксис я написал 3 месяца назад в описании тикета. Так написано недостаточно конкретно?
Да, действительно, это есть, а напомнить мне это в комменте-37 тебе было очень-очень трудно? :-)
А самому без дополнительных напоминаний прочитать описание тикета очень-очень трудно? :)
Читал, но забыл, упустил из виду, хорошо, что ты тут подсказал и я уже вставил в РЭ-66 правильный синтаксис.
Если тебе не нравится длина моих комментариев - закрывай тикеты так, чтобы у меня не было причин писать комментарии. :)
Очень нравится, но если будет добавляться конкретный текст, то будет ещё лучше,
тем более, что конкретный текст очень короткий: "\1, \2, \3" и достаточный для быстрого исправления ошибки.
follow-up: 44 comment:43 by , 7 weeks ago
Replying to Vladimir:
Тебе и не надо знать "что и откуда" - ты же читаешь мои тексты про своё изделие и можешь уверенно сказать, правда это или ложь, а если это ложь, то можешь подсказать где лежит правда или написать свою правду :-)
Правда лежит в описании тикета. Странно, что теперь я должен сообщать тебе об этом в каждом своем комментарии...
Считай, что я про твои изделия ничего не знаю :-)
В таком случае я не понимаю, как ты можешь выполнять свою работу. Нельзя описать то, чего не знаешь. Вынужден прекратить создавать тикеты с предложениями описать что-либо в РЭ. К сожалению, это приведет к тому, что пользователи не будут знать, как пользоваться нашей аппаратурой, перестанут ее покупать, компания перестанет получать доход и не сможет платить мне (и тебе!) зарплату... :(
Очень нравится, но если будет добавляться конкретный текст, то будет ещё лучше,
тем более, что конкретный текст очень короткий: "\1, \2, \3" и достаточный для быстрого исправления ошибки.
Этот конкретный текст я дал тебе три месяца назад!
follow-ups: 45 46 comment:44 by , 7 weeks ago
Replying to alx:
Replying to Vladimir:
Считай, что я про твои изделия ничего не знаю :-)
В таком случае я не понимаю, как ты можешь выполнять свою работу. Нельзя описать то, чего не знаешь.
Многое я уже, конечно, знаю из сообщений Разработчиков ХС, но не абсолютно всё,
а написал "не знаю"", для того, чтобы ты писал тикеты и комменты исходя из того, что я как бы ничего не знаю,
т.е. по возможности подробнее и конкретнее, как обычно ты пишешь в своих вики,
полагая, что эти вики буду читать не только я, но и юзеры-новички :-)
Очень нравится, но если будет добавляться конкретный текст, то будет ещё лучше,
тем более, что конкретный текст очень короткий: "\1, \2, \3" и достаточный для быстрого исправления ошибки.
Этот конкретный текст я дал тебе три месяца назад!
"Повторенье - мать ученья" - конкретно напомнить совсем не трудно :-)
Тикет этот уже 2 месяца назад закрыт и дополнен твоими ценными предложениями об улучшении,
теперь всем всё будет понятно, даже новичкам :-)
Спасибо за бесценную помощь, жду новых замечаний и предложений!
comment:45 by , 7 weeks ago
Replying to Vladimir:
Многое я уже, конечно, знаю из сообщений Разработчиков ХС, но не абсолютно всё,
а написал "не знаю"", для того, чтобы ты писал тикеты и комменты исходя из того, что я как бы ничего не знаю,
т.е. по возможности подробнее и конкретнее, как обычно ты пишешь в своих вики,
полагая, что эти вики буду читать не только я, но и юзеры-новички :-)
Тогда получается, что в каждом новой комментарии я должен повторять описание тикета и все предшествующие комментарии. Считаю такую идею абсурдом и, конечно же, делать так не буду.
"Повторенье - мать ученья" - конкретно напомнить совсем не трудно :-)
Ничто не мешает тебе перечитать описание тикета хоть тысячу раз, если это тебе надо для твоего ученья. Совсем не обязательно для этого его тысячу раз писать. Один раз написанное, оно не пропадет от того, что ты его прочитал.
comment:46 by , 7 weeks ago
Replying to Vladimir:
Спасибо за бесценную помощь, жду новых замечаний и предложений!
Мои предложения написаны в описании тикета после выделенного жирным шрифтом слова "Предлагаю".
follow-up: 48 comment:47 by , 5 weeks ago
Писать на странице 245 "см. стр. 245" - это оригинально... :)
comment:48 by , 5 weeks ago
Replying to alx:
Писать на странице 245 "см. стр. 245" - это оригинально... :)
Там было так: "... по описанным выше правилам (см. стр.245)",
но "выше" это неконкретно, т.к. выше 244 страницы текстов,
а в скобках указано, по сути, "см. на этой странице".
Однако, если Автор ХС считает, что эта ссылка тут лишняя,
то в РЭ-67 я её удалил (пусть ищут от первой до 245-й страницы :-) ).
Replying to alx:
На первый взгляд, ты выбрал странное место для выбора параметра "Режим PCRE":
в РЭ-61 есть п."7.1.2 Регулярные выражения..." на стр.236 и первый Диалог с Регулярными выражениями:
"Рис. 7.5 Вкладка Маршруты SIP" (Рис.7.5) на стр.240, а также далее на Рис.7.7...7.9,
но при этом выбор "PCRE2" добавлен в диалог
"7.12 Настройка параметров «ping» и «Опции SIP» плат VE (вкладка Разное)" Рис.126,
который почти в конце РЭ - на стр.384.
Описание параметра "Режим PCRE", наверное, лучше сделать в п."7.1.2 Регулярные выражения..." ? "
Это добавлю в РЭ
А ""бэкслэш-буква" на "доллар-буква"" тоже надо менять?