LINUX.ORG.RU

[perl] Как определить длину пересечения строк

 


0

1

Всем привет. Вот такой вопрос к знатокам...

Предположим есть строки: $s1 = «\x01\x02\x03\x04\x05\x06»; $s2 = «\x04\x05\x06\x07\x08\x09\x0A\x0B»;

Как можно при помощи регулярных выражений определить, что строка $s2 содержит в начале символы конца строки $s1 — «\x04\x05\x06» и подсчитать их количество (3)?..

Спасибо :)

★★

Последнее исправление: i82 (всего исправлений: 1)
Ответ на: комментарий от i82

>there are no partial word matches
Гм, да, проглядел что-то.

iSage ★★★★
()

> при помощи регулярных выражений

afaik, никак.

for (reverse 1..length $s1) {
	print("$_\n"), last  if substr($s1, -$_) eq substr($s2, 0, $_)
}
arsi ★★★★★
()
Ответ на: комментарий от arsi

Ну тогда уже лучше rindex использовать...

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.