Find only certain URLs from page ... regex (semi-complete script)


Posted on 16th Feb 2014 07:03 pm by admin

Hi guys,

What I need to do is take a page & extract all the URLs from the page & place them in an array.

However I only need to grab certain URLS

eg.

site1.com
site1.com/folder/thisfile.zip
site2.com
site2.com/some/folder/or/subfolder/1.mp3
site3.com

but then leave out of the array

site4.com
site5.com/the/script/needs/to/be/able/to/grab/sub/folders/and/files/2.mp3


Here's the script I've got so far but this will grab ALL the links ... so I need to modify this & perhaps use an if or switch statement to check whether it's a link I actually want...


<?php

$string = '<a href="http://www.example.com">Example.com</a> has many links with
examples <a href="http://www.example.net/file.php">links</a> to many sites and
even urls without links like http://www.example.org just to fill the gaps and
not to forget this one http://phpro.org/tutorials/Introduction-to-PHP-Regex.html
which has a space after it. The script has been modifiied from its original so now
it grabs ssl such as https://www.example.com/file.php also';

/**
*
* @get URLs from string (string maybe a url)
*
* @param string $string
*
* @return array
*
*/
function getUrls($string)
{
$regex = '/https?://[^" ]+/i';
preg_match_all($regex, $string, $matches);
return ($matches[0]);
}

$urls = getUrls($string);

foreach($urls as $url)
{
echo $url.'<br />';
}

?>

No comments posted yet

Your Answer:

Login to answer
339 Like 23 Dislike
Previous forums Next forums
Other forums

Batch update record with Pagination
Hoping someone can help me with this issue I'm having, im trying to batch update records from a resu

Turning Data into URLs?
This may seem very basic to you, but I'm having a hard time figuring out how to do this since I don'

MySQL issue
I am taking sentences through a form on page. Then checking some condition and trying to insert them

PHP time (deadline within one week)
I have a column ['projdue'], which stores the deadline for a project.
I have PHP code and <

Deleted Delivery but material wont return
We deleted a delivery but the material its still pending.

We made a reverse goods movemen

this code is not working????
it says this error.. Warning: Division by zero in ..

the variables are correct, so why is th

Error In Syntax
I got this error:

Code: Parse error: syntax error, unexpected '>' in /home/bucket/publ

Comparing two dates
Hi Guys
I have two dates I want to compare. Below is my current implementation. The problem with

problem in program for counting no of chars using pointers
Hi all, I was trying to make a program which counts number of chars in a string using concpt of poin

1,000 select boxes with 100 options?!
I have 1 drop down select box with 1,000 options.


In some case, there will be 100+ of the

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash