---
title: "Regexp och länk?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/168506-regexp-och-länk"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Travoni"
published: "2008-01-28T01:13:59.000Z"
updated: "2008-01-28T17:15:41.000Z"
replies: 8
views: 661
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/dotnet/168506-regexp-och-länk"
---

# Regexp och länk?

## #1 — Travoni, 2008-01-28T01:13Z

Jag vill söka igenom ett textdokument som hittar alla länkar som ser ut så här:

\<a href="/links/id345435/"\>Länknamn\</a\> (1956)
eller så här:
\<a href="/links/id345122/"\>Länknamn\</a\> (1987/A)
eller så här:
\<a href="/links/id342122/"\>Länknamn\</a\> (1987/AA)
eller så här:
\<a href="/links/id312455/"\>Länknamn\</a\> (1987/AAA)

```
Dim rx As New Regex("<a href=""\/links\/id(\d+)\/"">(.*?)<\/a> \(([0-9A\/])\)")

  matches = rx.Matches(strHtml)

  For Each match As Match In matches
      groups = match.Groups
          sb.AppendFormat("{0} - {1} ({2})<br />", groups.Item(1).Value, groups.Item(2).Value, groups.Item(3).Value)
  Next
```

Men om det kommer en länk som tex ser ut så här:
\<a href="/links/id312455/"\>Länknamn\</a\> (????)
...Så blir det fel.

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

## #2 — zzzimon, 2008-01-28T14:08Z

Hmm
Du har 

```
\(([0-9A\/])\)
```

 på slutet.
Fattas det inte en stjärna, eller kommer den 
inte bara att matcha *ett* tecken annars?

Men det är väl inte det som är felet. Hur menar
du att det inte fungerar? Menar du att (????) 
matchar fast det inte borde göra det? 

mvh Simon

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

## #3 — Travoni, 2008-01-28T15:31Z

Ja, precis, det är ju bara 0-9 och eller slash / och eller A:n som skall matcha det innanför parenteserna.

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

## #4 — Peter S, 2008-01-28T15:39Z

Så ditt sista exempel skall inte tas med?

```
Dim rx As New Regex("<a href=""/links/id(\d+)/"">(.*?)</a> \(([0-9]+(?:/A+)?)\)")
```

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

## #5 — Travoni, 2008-01-28T16:03Z

Jo det är kanske så att frågetecken också skall få vara med...

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

## #6 — Peter S, 2008-01-28T16:22Z

```
Dim rx As New Regex("<a href=""/links/id(\d+)/"">(.*?)</a> \(((?:[0-9]+(?:/A+)?)|\?+)\)")
```

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

## #7 — Travoni, 2008-01-28T16:29Z

Oki, vad juste!
Men ponera att det står något annat i parentesen (arne)
vad händer med mönstret då, kommer den länken finnas med bland "matches"?

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

## #8 — Peter S, 2008-01-28T16:56Z

Nej, då kommer den länken inte med. Vill du ha med länkar oavsett vad som står inom parenteserna kan du skriva

```
Dim rx As New Regex("<a href=""/links/id(\d+)/"">(.*?)</a> \([^)]+\)")
```

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

## #9 — Travoni, 2008-01-28T17:15Z

Tack!

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/168506-regexp-och-länk
