Застрял в новом случае в матче регулярных выражений ...
У меня есть строка, содержащая слова, #hashtags, @useranmes и другие разные символы.
Некоторые примеры того, как они становятся все более и более грязными. «Мой новый автомобиль» часто необязателен и не существует, так как это замена preg, я заканчиваю пустой строкой, что в моем случае желательно. Но если «Мой новый автомобиль» существует, это будет желаемая строка
- Мой новый автомобиль # колеса # автомобиль # авто # драйв # выходные
- Мой новый автомобиль # колеса # автомобиль # авто # привод # выходные @ я
- Мой новый автомобиль # колеса, # автомобиль, # авто, # драйв, # выходные
- Мой новый автомобиль # колеса, # автомобиль, # авто, # привод, # выходные, @me
(Все вышеперечисленное, без «Моего нового автомобиля», обычная путаница с двойным интервалом и т. Д.)
(Тогда люди становятся модными и добавляют смайлики в строку
- Мой новый автомобиль # колеса #car \ ud83d \ ude2d \ ude2d \ ud83d \ ude2d \ ud83d \ ude02
Желаемый результат:
1. Моя новая машина
2. Мой новый автомобиль
3. Мой новый автомобиль
4. Моя новая машина
5. Мой новый автомобиль
Я неплохо справился с (^|\s)[#@](\w+)
, а затем в игру вступили эмодзи, а также забавные квадраты, которые представлены как \ ue412 \ ue412
Я думаю, мне нужно только найти способ сказать, если начинается с \ удалить до конца. Я думал пойти другим путем и отрицать что-нибудь, не [a-zA-Z0-9], но это также многоязычный.
Есть предложения?