我正在使用PHP脚本清理文本文件中的URL,现在这里是代码:
$file = __DIR__."/url.txt";
$f = fopen($file, "r");
$array1 = array();
while ( $line = fgets($f, 1000) ) {
$nl = mb_strtolower($line,'UTF-8');
$array1[] = $nl;
}
foreach ($array1 as $value) {
$value = preg_replace('#^https?://#', '', $value);
$value = preg_replace('#^www.#', '', $value);
echo $value."<br>";
}
所以我从这些网址中删除了http://
和www
这是输出:
urlnumberone.com
urlnumbertwo.uk
subdomain.urlnumberthree.com
urlnumberfour.com
我想要的是删除子域名,只需要urlnumberthree.com
感谢您的帮助!
答案 0 :(得分:2)
纯正则表达式解决方案:
function cobweb(f,a,b,x0,x1,N)
x(1)=0.2; % plot orbit starting at x0
for i=1:100
x(i+1)= 3*x(i)*(1-x(i));
plot([x(i),x(i)],[x(i),x(i+1)]);
hold on
plot([x(i),x(i+1)],[x(i+1),x(i+1)]);
hold on
end
hold on
r = 3;
x = 0:0.01:1; %// set some x
f = (r.*x.*(1-x));
hold on
plot(x,f,'k')
hold on
plot([x(1), 0], [x(1), 3*x(1)*(1-x(1))])
这会替换您的preg_match('#[^\.]+[\.]{1}[^\.]+$#', $value , $matches);
$value = $matches[0];
。
答案 1 :(得分:1)
检查'。'的出现次数如果它们大于1,则删除开头直到第一个点。