---
title: "RegExp."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/139248-regexp"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Fredde Mannen"
published: "2005-12-13T17:21:41.000Z"
updated: "2005-12-16T09:36:35.000Z"
replies: 10
views: 397
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/asp/139248-regexp"
---

# RegExp.

## #1 — Fredde Mannen, 2005-12-13T17:21Z

Är kass på regexp, men i alla fall

```
	Dim objRegExp
	Set objRegExp = New RegExp
	objRegExp.IgnoreCase = False
	objRegExp.Global = False
	objRegExp.Pattern = "Att:(*?):(*?)"

	Set rs = MyConn.ExeCute("Select * from guestbook where namn='" & $1 & "' AND datum='" & $2 & "'")

	stext = objRegExp.Replace(stext,"<pre>" & rs("meddelande") & "</pre>" & vbcrlf & stext) 
	rs.close
```

att den läser igenom en text, och hittar den i texten ex: Att:Fredde:2005-01-01

så skall den hämta den meddelandet och skriva ut det mellan ex. \<pre\>\</pre\> 

hjälp på vägen tack! :)

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

## #2 — emission, 2005-12-13T17:42Z

```
Dim objRegExp
Set objRegExp = New RegExp
objRegExp.IgnoreCase = False
objRegExp.Global = False
objRegExp.Pattern = "Att:([^:]+):([^:]+)"

set colMatches=objRegExp.Execute(DinTextVariabel)
if colMatches.Count>0 then
	Set rs = MyConn.ExeCute("Select * from guestbook where namn='" & replace(colMatches(0).Submatches(0),"'","''") & "' AND datum='" & replace(colMatches(0).Submatches(1),"'","''") & "'")
	stext = objRegExp.Replace(stext,"<pre>" & rs("meddelande") & "</pre>" & vbcrlf & stext) 
	rs.close
end if
```

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

## #3 — Fredde Mannen, 2005-12-13T19:01Z

huhu

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

## #4 — Fredde Mannen, 2005-12-13T20:03Z

Bläää blir fel i alla fall... 

```
Syntaxfel (operator saknas) i frågeuttrycket 'namn='Tommy' AND datum=2005-10-15<br /><br />Tjohej f&#246'.
```

pattern tar med allt efter 2005-10-15
Jag vill att den bara plockar ut i detta fall, Tommy, som den gör rätt, men fel på datum.. där tar den allt efter också.. :(

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

## #5 — emission, 2005-12-13T21:33Z

Du verkar ha slängt bort enkelfnuttarna runt datumet...

Jag var lite lat när jag skrev mönstret

objRegExp.Pattern = "Att:(\[^:\]+):(\\d{4}-\\d{2}-\\d{2})"

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

## #6 — Fredde Mannen, 2005-12-14T08:52Z

> **emission skrev:**
>
> Du verkar ha slängt bort enkelfnuttarna runt datumet...

Jo det gjorde jag bara för att se vad mer som kom med.. utan att behöva skriva ut satsen. :)

Okei.. skall testas! :)

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

## #7 — Fredde Mannen, 2005-12-14T09:52Z

hmm.. 

```
Select * from guestbook where namn='Fredde' AND datum='2005-12-09'Utför test nu..
```

Av det senaste mönstret, så ja visst. Den plockar ut det, och stoppar det mellan fnuttarna, men lika fullt så sätter den nästa text efter fnuttarna, den texten som jag inte alls vill ha med... 

I nuläget utan Execute, bara response.write.

```
	Set objRegExp = New RegExp
		objRegExp.IgnoreCase = False
		objRegExp.Global = False
		objRegExp.Pattern = "Att:([^:]+):(\d{4}-\d{2}-\d{2})"

		set colMatches=objRegExp.Execute(stext)
		Dim namnet, datumet
		
		if colMatches.Count>0 then
                        
			namnet = replace(colMatches(0).Submatches(0),"'","''")
			datumet = replace(colMatches(0).Submatches(1),"'","''")
		
			Response.Write("Select * from guestbook where namn='" & namnet & "' AND datum='" & datumet & "'")
			' stext = objRegExp.Replace(stext,"<pre>" & rs("meddelande") & "</pre>" & vbcrlf & stext) 
			' rs.close
		end if
```

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

## #8 — Fredde Mannen, 2005-12-14T21:28Z

```
	Dim objRegExp
	Set objRegExp = New RegExp
	objRegExp.IgnoreCase = False
	objRegExp.Global = False
	objRegExp.Pattern = "Att:([^:]+):(\d{4}-\d{2}-\d{2})"

	set colMatches=objRegExp.Execute(stext)

	if colMatches.Count > 0 then
		Set rs = MyConn.ExeCute("Select * from guestbook where namn='" & replace(colMatches(0).Submatches(0),"'","''") & "' AND datum=#" & replace(colMatches(0).Submatches(1),"'","''") & "#")
		stext = objRegExp.Replace(stext,"<div align=""center""><table style=""width: 90%;""><tr><td style=""background-color: #DEDEE4;color: #000000;""><b>" & rs("namn") & "</b>, " & rs("datum") & " " & VbCrlf & rs("meddelande") & "<td></tr></table></div>") 
		rs.close
	end if
```

 Funkar fint nu, dock att den bara ersätter 1 gång mer inlägg.. alltså man kan inte göra 2 eller fler ersättningar... \*snyft\*

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

## #9 — mozilla, 2005-12-14T21:38Z

Du har ju stängt av det???

objRegExp.Global = False

Ändra det till true så är sökningen global.

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

## #10 — Fredde Mannen, 2005-12-16T08:14Z

Ooops.. :)

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

## #11 — Peter S, 2005-12-16T09:36Z

[Tips!](http://www.webforum.nu/showthread.php?t=134355)  (y)

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/139248-regexp
