У меня есть форма ввода, где пользователи могут загружать тестовый отчет, минимальная длина - 100 слов. Некоторые пользователи пишут меньше, чем это, и просто копируют то, что они написали, до тех пор, пока не будет достигнут порог в 100 слов.Обнаружение повторения в текстовой строке/скопированный текст
Я хотел бы протестировать (в идеале через php), чтобы текстовая строка содержала повторяющийся текст, то есть там, где скопированы подмножества этой строки. Я подумывал сделать более четкий анализ текста, который может привести к повторению текста внутри строки. Существует ли для этой цели класс php или регулярное выражение?
Некоторого образец текст:
блаб л. это какой-то текст, мне становится скучно. это примерно текст сейчас мне становится скучно. это какой-то текст, мне становится скучно. вот какой-то текст сейчас мне скучно. это какой-то текст сейчас мне скучно. некоторые вещи в конце.
Обновление: Мое предложение, чтобы решить эту проблему следующим образом
1) Карта строку в массив целых чисел, то есть найти числовое представление для каждого символа. Таким образом, выше образец стал бы
numerics = array (2, 5, 1, 2, 5, 1, ...);
2) Применение преобразования Фурье на этом массиве, чтобы получить «частотный спектр символа»
FT = fft (numerics);
Это определяет закономерности в характере пространства. , например. можно было бы использовать this class для вычисления fft.
3) Обнаружение пиков функции FT. Измерьте относительную высоту пиков по сравнению с шумом в фоновом режиме.
4) Установите порог для пиков. Если какой-либо пик выше этого порога, то верните, что появились обычные шаблоны в тексте. например повторение предложений несколько раз должно четко обозначать высокий пик на определенной частоте.
Поскольку это предложение будет довольно прямолинейным в аналитике данных, я задаюсь вопросом, не было ли это раньше. Поэтому я хотел задать здесь вопрос, если кто-нибудь знает, существует ли такой алгоритм в открытом источнике.
Конечно, альтернативные решения/предложения, как решить эту проблему, будут оценены.
Пожалуйста, разместите свое решение незавершенного производства, а не просто попросите нас написать код. – JAL
@JAL Я прошу php-класс, который уже может существовать как решение. – George
Мне бы не хотелось работать в вашей компании, если вам нужно ввести 100 слов, чтобы «все получилось хорошо». Хиты на [lorem ipsum] (http://www.lipsum.com/) будут идти прямо вверх! –