2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2, 3
 
 Re: Загадочный regexp
Сообщение26.01.2018, 19:03 
Аватара пользователя
wrest в сообщении #1287649 писал(а):
Здесь нет обратных ссылок
Есть, \1.
wrest в сообщении #1287649 писал(а):
строка из простого числа, например пяти (что больше чем один, да?) одинаковых символов не матчится.
Не матчится чем, и где кто-то утверждал, что должна матчиться? Вы спросили, что значит "$|w| > 1$".
wrest в сообщении #1287649 писал(а):
Меняем все символы в строке на один
Это уже выходит за рамки регулярок с бэкреференсами.

 
 
 
 Re: Загадочный regexp
Сообщение26.01.2018, 20:05 
mihaild в сообщении #1287653 писал(а):
Не матчится чем,

Регуляркой из первого поста этой загадки
mihaild в сообщении #1287653 писал(а):
и где кто-то утверждал, что должна матчиться?

Вы, вот тут в ответ на вопрос:
wrest в сообщении #1287532 писал(а):
что будет находить регулярное выражение:
Код:
^.?$|^(..+?)\1+$


Ответили:
mihaild в сообщении #1287569 писал(а):
Пустая строка, один символ, $www^*$, где $|w| > 1$.

С учетом вашего пояснения что значит $|w| > 1$
mihaild в сообщении #1287648 писал(а):
Это значит "$w$ - строка, состоящая более чем из одного символа".

Выходит что должна матчиться как строка из 4-х одинаковых символов, так и из 5-ти одинаковых символов. А это нет так. Вот и все :)

 
 
 
 Re: Загадочный regexp
Сообщение26.01.2018, 20:30 
Аватара пользователя
wrest в сообщении #1287665 писал(а):
Выходит что должна матчиться как строка из 4-х одинаковых символов, так и из 5-ти одинаковых символов.
Нет, не значит. Что вы предлагаете взять в качестве $w$, чтобы строка $11111$ подходила под $www^*$?

 
 
 
 Re: Загадочный regexp
Сообщение26.01.2018, 21:14 
mihaild
Я сдаюсь. Ечли ваш ответ значит тоже самое что и ответ grizzly, значит вы отгадали загадку в первом же вашем ответе тут в этой теме, с чем вас и поздравляю! :!:

 
 
 
 Re: Загадочный regexp
Сообщение01.02.2018, 23:01 
Аватара пользователя
wrest в сообщении #1287644 писал(а):
Очарование загадки должно было быть в том, что казалось бы, где регулярки и где простые числа, а вот подиж ты, решето Эратосфена оказывается вот так вот создается в регулярке...


Мне очень понравилось, спасибо. Сам не догадался и даже после того, как сказали, ещё не осознал как следует, потом ещё вернусь и об этом подумаю.
Я в vim испытывал. vim не понимает конструкцию +? и ещё по умолчанию включен magic, из-за чего надо ставить \v перед всем выражением, чтобы magic отменить, или дополнительные слешы перед скобками, а так же перед |, ?, +.
Если этого не считать, всё работает.

 
 
 [ Сообщений: 35 ]  На страницу Пред.  1, 2, 3


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group