私はこれらのようなURLの束を持っています。http://とwwwを削除する正規表現。 URLから
$urls = array(
'https://site1.com',
'https://www.site2.com',
'http://www.site3.com',
'https://site4.com',
'site5.com',
'www.site6.com',
'www.site7.co.uk',
'site8.tk'
);
私は、HTTP、HTTPS、削除したい://とWWWを。これらの文字列から、出力がこれらのように見えるようにします。
$urls = array(
'site1.com',
'site2.com',
'site3.com',
'site4.com',
'site5.com',
'site6.com',
'site7.co.uk',
'site8.tk'
);
私はこの解決策を思いついた。
foreach ($urls as $url) {
$pattern = '/(http[s]?:\/\/)?(www\.)?/i';
$replace = "";
echo "before: $url after: ".preg_replace('/\/$/', '', preg_replace($pattern, $replace, $url))."\n";
}
私は2番目のpreg_replaceを避ける方法を知りました。何か案は?
+1、本当に素晴らしいです。 – sidyll
賞金のPaulPROをありがとう、なぜ私はちょうど理由を理解していない。あなたの答えは完璧です。 – sidyll
'$ urls = preg_replace( '〜^(?:https?://)?(?:www \。)?〜i'、 ''、$ urls);'。 –