Помогите с регуляркой?

D
На сайте с 28.06.2008
Offline
1101
234

Вот пытаюсь тут https://regex101.com/r/mj9I9y/1 зацепить слово

тетраметилтетраазабициклооктандион

Нужная регулярка - любая буква (латинская или кириллица + возможный пробел 1 и более раз) повторенные от 5 до 30 раз

imaster-php
На сайте с 02.05.2019
Offline
8
#1

Вот ваша регулярка

/[a-zа-я ]{5,30}/iu


---------- Добавлено 28.05.2019 в 09:24 ----------

Но в слове "тетраметилтетраазабициклооктандион" 34 символа
Хостинг для сайта ( https://good-hoster.ru ) - сервис по выбору хостинга
Апокалипсис
На сайте с 02.11.2008
Offline
391
#2

Как то так, но у вас подход не тот малость.

~<td>\w{5,34}</td>~/ius
Записки нищего (http://zapiskinishego.ru) - мой личный блог Услуги php программиста. Очень нужна любая работа. Не покупают? Поведенческий аудит интернет-магазина за 5000 руб. (/ru/forum/990312)
D
На сайте с 28.06.2008
Offline
1101
#3

Хм.. что-то не догоняю. Сервис по ссылке выше выдает такой код

$re = '~<td>[a-zа-я ]{5,40}</td>~msU';
$str = '<tr>
<td></td>
<td><b>1 таб.</b></td>
</tr>
<tr>
<td>тетрамет иклоо ктандион</td>
<td>500 мг</td>
</tr>';

preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);

// Print the entire match result
var_dump($matches);

Вроде все ок -но почему он не работает при тесте в пхп?

Получаю

array (size=0)

empty

IL
На сайте с 20.04.2007
Offline
435
#4

А файл в кодировке unicode? ))

В ANSI - сработало, в UTF-8 - нет.

---------- Добавлено 28.05.2019 в 16:31 ----------

$re = '~<td>[a-zа-я ]{5,90}</td>~isu';
... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
Samail
На сайте с 10.05.2007
Offline
363
#5
Dram:
Хм.. что-то не догоняю. Сервис по ссылке выше выдает такой код
Цитата:
$re = '~<td>[a-zа-я ]{5,40}</td>~msU';

U на u (строчную) поменяй

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