---
title: "Reg Exp: URL."
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/58839-reg-exp-url"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "D-M_R"
published: "2002-11-12T16:48:12.000Z"
updated: "2002-11-12T18:59:37.000Z"
replies: 1
views: 350
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/58839-reg-exp-url"
---

# Reg Exp: URL.

## #1 — D-M_R, 2002-11-12T16:48Z

Har ett regexp som gör om \[url \] och \[/url \] till adress.
men om adressen är för lång så pajjas sidans layout.

$search = array(
"'(\\\[url\\\])(.\*)(\\\[\\/url\\\])'Ui",
);

$replace = array(
"\<a href=\\"\\\\2\\" target=\\"\_blank\\"\>\\\\2\</a\>",
);

$string = preg_replace($search, $replace, $string);

Vill på nå vis göra så själva namnet på länken förkortas.
så om man har en lång adress blir det bara tex
<http://www.theverrylongadress.com/mapp/mapp...>
eller nått.

Permalänk: https://www.webforum.nu/p/58839

## #2 — Asterix, 2002-11-12T18:59Z

Detta funkar

```php
<?
function test($str,$newlen) {
  $oldstr = strlen ($str);
  if ($oldstr > $newlen) {
    return substr ($str, 0, $newlen * 0.7 - 2) ."...". substr ($str, $oldlen - ($newlen * 0.3 + 1));
  }
  return $str;
}

$string = "JAG [url]http://www.test.com[/url] [url]http://www.webhallen.com/admin/hej/asdjkkjehnan/ajksdkj/bilder/temp/hej.php[/url] inget";

$search = array("'(\[url\])(.*)(\[\/url\])'Uie");

$replace = array("'<a href=\"\\2\" target=\"_blank\">'.test('\\2',50).'</a>'");

$string = preg_replace($search, $replace, $string); 

echo $string;
?>
```

Ändra siffran som nu är 50 till hur lång du vill att den nya strängen ska bli.
För långa blir <http://www.test.com/asd...asd/hej.php>

Koden blir helt konstig så jag laddade upp den i stället. Du hittar den här: <http://www.webhallen.com/emil/regexp_links.phps>

Permalänk: https://www.webforum.nu/p/853342

---

Tråden på webben: https://www.webforum.nu/amne/php/58839-reg-exp-url
