2015-01-18 7 views
0
if (preg_match('#^https?://account.oneplus.net/invite/claim/....-....-....-....#', $url) === 0) { 
    return "Invalid link"; 
} 

В настоящее время я использую этот код (на PHP) для проверки URL-адреса. Тем не менее, он также передается как истинный, когда вы пытаетесь использовать другие вещи, идущие за ссылку. Как исправить это, чтобы только ссылки, заканчивающиеся на или без работы?Regex to match OPO Пригласить ссылку

ответ

1

Это регулярное выражение я искал:

preg_match('#^https?://account.oneplus.net/invite/claim/\S{4}-\S{4}-\S{4}-\S{4}/?$#', $url) === 0 
+0

вот что я сказал .. –

+0

Вы отредактировали свой ответ :) Но теперь это хорошо, поэтому вы можете иметь эти очки;) – woutwoot

0

Я предлагаю вам заменить все точки с \S (, который соответствует любому пробелу), так .... будет написано как \S{4}, потому что . будет соответствовать также горизонтальное пространство. А также добавьте шаблон (/?), чтобы он соответствовал необязательному / последним.

+0

Хорошо, я сделал это изменение. Спасибо. Теперь, как я могу исправить тот факт, что он соответствует, когда за ссылкой больше символов? – woutwoot