---
title: "antal förekomster av tecken"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/91057-antal-förekomster-av-tecken"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Jymdis"
published: "2003-11-23T15:10:33.000Z"
updated: "2003-11-26T13:12:24.000Z"
replies: 8
views: 369
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/91057-antal-förekomster-av-tecken"
---

# antal förekomster av tecken

## #1 — Jymdis, 2003-11-23T15:10Z

Jag borde kunna göra det själv men man är väl slö eller nåt efter igår så jag vill ha en funktion för att räkna antal förekomster av ett tecken i en sträng, nån som sitter på en? =)

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

## #2 — @nders, 2003-11-23T15:29Z

Enklast möjliga:

```
Function countStuff(strText, strChar)
       tmp = ubound(split(strText, strChar)) -1
       if tmp = -1 then tmp = 0
       countStuff = tmp
End function
```

Mvh

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

## #3 — Erik Juhlin, 2003-11-23T15:34Z

Eller varför inte klara av tomma strängar?

```
Function countStuff(strText, strChar)
       tmp = ubound(split(strText, strChar)) -1
       if tmp < 0 then tmp = 0
       countStuff = tmp
End function
```

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

## #4 — mikul, 2003-11-23T15:34Z

```
function CountChr(str, strChar)
     For i to len(str)
          If mod(str,i,1) = strChar then
               IntCount = cInt(IntCount +1)
          End if
     Next
     CountChr = IntCount
End function

'Anropa funktionen CountChr(texten, tecknet)
Response.write CountChr(strTexten, "Ä")
```

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

## #5 — mikul, 2003-11-23T15:35Z

Så kan man ju också göra :e

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

## #6 — Jymdis, 2003-11-23T15:36Z

Tackar!

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

## #7 — Erik Juhlin, 2003-11-23T15:40Z

Ett annat sätt att göra det:

```
Function InStrCount(ByVal sString As String, _
    ByVal sString2 As String, _
    Optional ByVal vbCompare As VbCompareMethod = vbTextCompare) As Long
	
	InStrCount = (Len(sString) - Len(Replace(sString, sString2, "", 1, -1, vbCompare))) / Len(sString2)
	
End Function
```

Vet inte vad som är snabbast av Split och Replace.
Len är i alla fall snabbt. Den behöver inte räkna tecken för tecken, utan längden ligger redan lagrad för textvariabler...

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

## #8 — OveRRidE, 2003-11-23T16:47Z

> **Erik Juhlin skrev:**
>
> Ett annat sätt att göra det:
>
>
> ```
> Function InStrCount(ByVal sString As String, _
>     ByVal sString2 As String, _
>     Optional ByVal vbCompare As VbCompareMethod = vbTextCompare) As Long
> 	
> 	InStrCount = (Len(sString) - Len(Replace(sString, sString2, "", 1, -1, vbCompare))) / Len(sString2)
> 	
> End Function
> ```
>
> Vet inte vad som är snabbast av Split och Replace.
> Len är i alla fall snabbt. Den behöver inte räkna tecken för tecken, utan längden ligger redan lagrad för textvariabler...

I VB, bör tilläggas. Inte VBScript.

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

## #9 — Erik Juhlin, 2003-11-26T13:12Z

Ah, Stojan har rätt...
Men behövs inte många förändringar för att det ska funka i VBScript. :)

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/91057-antal-förekomster-av-tecken
