Задать вопрос
Этот вопрос закрыт для ответов, так как повторяет вопрос Как обрезать строку?
@VoRoN1999

Как составить регулярку?

Добрый день.

Есть строка web.test.pages.page. Мне нужно получать всегда только 2 значение (после первой точки), если слово только одно, то оно и должно вернуться.
Примеры:

Строка: web.test.pages.page
Ответ: test

Строка: web.test
Ответ: test

Строка: web.test.yes
Ответ: test

Строка: test1
Ответ: test1

Разумеется, что слова могут быть любыми.
  • Вопрос задан
  • 134 просмотра
Подписаться 2 Простой 2 комментария
Решения вопроса 1
Stimulate
@Stimulate
могу
$var = 'web.test.pages.page';
$array = explode('.', $var);
$needle = isset($array[1]) ? $array[1] : $array[0];

echo $needle;
Ответ написан
Ответы на вопрос 1
Ninazu
@Ninazu
<?php
  
$regExp = "/(\.(\w+){1})|(^\w+$)/";


$tests = [
    "web.test1.pages.page",
    "web.test2",
    "web.test3.yes",
    "test4",
];

foreach($tests as $test){
    if(preg_match($regExp, $test, $matches)){
        var_dump(end($matches));
    }
}
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы