PHP Regex tweet Filter

у меня есть вопрос. Я просматриваю профиль twitter, используя Rstudio, Postgreql, PHP

Im пытается фильтровать твиты из профиля twitter.

Im использует php с postgresql. У меня уже есть твиты в таблице на моем веб-сайте, используя SQL Query. Я хотел бы использовать Regex для фильтрации твитов. Я не хочу показывать все твиты из профиля twitter на моем веб-сайте, просто некоторые, например твиты, содержащие #Vertraging. Теперь я вижу все твиты на моем сайте.

Как я могу исключить все твиты, не содержащие #vertraging?

посмотреть скриншот для моей таблицы на моем сайте

http://prntscr.com/384y5m

Вы можете пойти двумя способами. Или вы отфильтровываете их перед отправкой в ​​свою базу данных. В этом случае вы можете использовать:

 if (preg_match('/\#vertraging/i', $tweet) { //Insert in DB } 

Если вы хотите вставить все из них, но только выберите те, у которых #vertraging из вашей базы данных, вы можете использовать это WHERE в своем запросе

 WHERE `tweetsText' LIKE '%#vertraging%' 

Если вы используете Postgresql, вы можете игнорировать Regex и использовать прямо, like вместо этого. Например:

 SELECT * FROM `tweets_table` WHERE `tweet_content` LIKE '%#Vertraging%' 

Это должно быть таким же эффективным, как регулярное выражение и, вероятно, больше. Надеюсь, это поможет! Если вы беспокоитесь о верхнем и нижнем регистре, вы можете сделать две разные вещи:

 SELECT * FROM `tweets_table` WHERE LOWER(`tweet_content`) LIKE '%#vertraging%' 

или вы можете использовать similar to . Тем не менее, я бы просто использовал более lower альтернативу.

 SELECT * FROM `tweets_table` WHERE `tweet_content` SIMILAR TO '%#(Vertraging|vertraging)%' 

Надеюсь, это поможет!