Регулярное выражение для поиска текста на русском...

12
Unlock
На сайте с 01.08.2004
Offline
782
#11

Роман, Ok.

Всем отписавшимся спасибо!

Есть желание, - тысяча способов; нет желания, - тысяча поводов! /Петр-I/.
Polimer
На сайте с 01.09.2006
Offline
84
#12

Мой вариант поиска русского текста. Учитывает возможность включения в русский текст английских терминов. Здесь русским текстом считается последовательность из более 2-х русских символов. Термином считается последовательность из не более 10-ти английских, цифровых и неалфавитно-цифровых символов.


<?php
$text =
"English text English text English text English text Русский текст1 Русский текст1 ENG Русский текст1 ENG Русский текст1 Русский текст1 English text English text English text English text English . text English text Русский текст2 Русский текст2 Русский текст2 ENG2 Русский текст2 Русский текст2 English text English text English text English text English text English text English text English text English text Русский текст1 Русский текст1. Русский текст1 Русский текст1 Русский текст1 Русский текст1 Русский текст1";
$regexp = "%(?:(?:[а-я\d\s]{3,}[a-z\d\s.\W_]{1,10})*[а-я\d]{3,})+%i";
preg_match_all($regexp, $text, $rus);
echo "<pre>";
var_dump($rus);
?>

на выходе имеем:


array(1) {
[0]=>
array(3) {
[0]=>
string(83) " Русский текст1 Русский текст1 ENG Русский текст1 ENG Русский текст1 Русский текст1"
[1]=>
string(80) " Русский текст2 Русский текст2 Русский текст2 ENG2 Русский текст2 Русский текст2"
[2]=>
string(106) " Русский текст1 Русский текст1. Русский текст1 Русский текст1 Русский текст1 Русский текст1 Русский текст1"
}
}
Программные решения для бизнеса. (http://frontsoft.ru/) На заказ. Дорого.
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий