PHP Regex, как я могу захватить только имена?

0

Я пытаюсь захватить только имена без цифр или пробелов в начале.

Например, Мои имена выглядят так:

0410 - Game Name One (Europe)
0650- Game Name Two(Europe)
5874 -Game Name Three (Europe)
3698  -  Game Name Four (Europe)

Я не могу просто удалить первые 6 символов, потому что иногда есть лишние пробелы или вообще нет пробелов.

Я хочу в итоге:

Game Name One (Europe)
Game Name Two(Europe)
Game Name Three (Europe)
Game Name Four (Europe)

Я пытался это сделать, но это просто не получилось, поэтому я надеюсь, что смогу помочь.

(\d+)\s-\s(.*?)
  • 0
    попробуйте это: \ d + \ s * - \ s * (. *)
Теги:

3 ответа

2
Лучший ответ

Как насчет:

^\d+\s*-\s*(.+)

Вы найдете имя в группе 1.

  • 0
    Да, это прекрасно работает, спасибо
  • 0
    @Exoon: Пожалуйста, рад, что это помогает.
1
^\d+\s*-\s*

Заменить empty string.use preg_replace

0

Для вашего случая необходимо следующее:

[A-Za-z].*

Часть имени может начинаться с g или G или любой другой прописной или строчной буквы.

Более общее решение было бы:

(?!.*?-)\w.*

Проверьте: https://regex101.com/r/mD3bJ7/1

  • 0
    Проблема только в том, что если игра начинается с номера, она не будет работать.
  • 0
    @Exoon: Вы правы, но это было только пример конкретного решения ОП .. теперь я добавил общее ..

Ещё вопросы

Сообщество Overcoder
Наверх
Меню