---
title: "Plocka ut siffror före och efter \"|\"?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/javascript/61600-plocka-ut-siffror-före-och-efter"
topic: "JavaScript"
topic_url: "https://www.webforum.nu/amne/javascript"
author: "Jesper T"
published: "2002-12-09T09:26:57.000Z"
updated: "2002-12-10T12:24:26.000Z"
replies: 13
views: 265
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/javascript/61600-plocka-ut-siffror-före-och-efter"
---

# Plocka ut siffror före och efter "|"?

## #1 — Jesper T, 2002-12-09T09:26Z

link1\[3\] = new boxData("Virknålar",**10\|5.3**);

Jag skulle vilja plocka ut värdet före, respektive efter "\|".
Hur gör man det?

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

## #2 — colione, 2002-12-09T09:40Z

```
firstSplit=link1[3].split(",")
finalSplit=firstSplit[1].split("|")
alert(finalSplit[0])
alert(finalSplit[1])
```

Jag splittar först strängen efter , för att få "Virknålar" och "10\|5.3" i en egen array. Därefter splitar jag den delen av arrayen som 10\|5.3 ligger i, dessa läggs i en ny array vid namn finalSplit.

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

## #3 — Jesper T, 2002-12-09T09:44Z

Tack, men denna rad kan se ut på flera sätt:
ex.

```
link1[3] = new boxData("Virknålar",10|5.3);
link2[1] = new boxData("Virknålar",10|5.3);
link0[2] = new boxData("Virknålar",10|5.3);
```

Skapar det problem då?

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

## #4 — Jesper T, 2002-12-09T09:46Z

Iofs så hamnar "10\|5.3" i ett value i en select så att det kanske inte spelar någon roll?!

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

## #5 — colione, 2002-12-09T09:47Z

Nej inte så länge du har fler kommatecken i de olika värdena...Sen kan du ändra såväl indexet som namnet på arrayen (link*x*\[*i*\]) hur du vill. sålänge som du har ett kommatecken innan 10\|5.3 men du kan ha hur många kommatecken du vill efter...

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

## #6 — Jesper T, 2002-12-09T09:51Z

Det ser ut så här:

```
 <form name="form1" method="post" action="">
<input type="hidden" name="hiddenField" value="[b]10|5.3[/b]">
</form>
```

 
Och där ifrån skall värdet splittas.

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

## #7 — colione, 2002-12-09T09:54Z

Du kan lägga det i en funktion om du vill:

```
function splitme(stringToSplit, firstSeparator, secondSeparator){
firstSplit=stringToSplit.split(firstSeparator)
finalSplit=firstSplit[1].split(secondSeparator)
alert(finalSplit[0])
alert(finalSplit[1])
//return finalSplit
}
```

Där stringToSplit, firstSeparator, secondSeparator är variablar som du skickar med när du anropar funktionen.

Men när du vill ta hand om värdena då får du skicka iväg arrayen med en return till den funktion som du anropade ifrån med return. Därefter så får du behandla värdena där.

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

## #8 — colione, 2002-12-09T09:56Z

```
document.form1.hiddenField.value.split("|")
```

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

## #9 — Jesper T, 2002-12-09T15:16Z

Har ändrat detta 100 gånger nu, vad är fel?
Vill ha värdet till höger om \|

```
<form name="form1">
<input type="text" name="hiddenField" value="10|5.4">
<script>
document.write(document.form1.hiddenField.value[1].split("|"))
</script>
</form>
```

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

## #10 — @nders, 2002-12-09T15:18Z

```
<form name="form1">
<input type="text" name="hiddenField" value="10|5.4">
<script>
document.write(document.form1.hiddenField.value.split("|")[1]);
</script>
</form>
```

Mvh,

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

## #11 — Jesper T, 2002-12-09T15:20Z

Nu så strår det "NaN" i fälten.
Nu/funkar ej:

```
 var splittatVarde = (document.TrainForm.MET.value.split("|")[1]);
var calBurnt = Math.round(splittatVarde * document.TrainForm.Vikt.value * duration);
<input type="hidden" name="MET" value="10|5.6">
```

 

Förut/funkar:

```
 var calBurnt = Math.round(document.TrainForm.MET.value * document.TrainForm.Vikt.value * duration); 
<input type="hidden" name="MET" value="5.6">
```

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

## #12 — Jesper T, 2002-12-09T18:24Z

Vad kan det vara för fel?

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

## #13 — Jesper T, 2002-12-09T19:59Z

Är det någon som har en idé?

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

## #14 — colione, 2002-12-10T12:24Z

När du splitade görs den om till en sträng. Prova att göra såhär:

```
var splittatVarde = (document.TrainForm.MET.value.split("|")[1]);
var calBurnt = Math.round([b]eval(splittatVarde)[/b] * document.TrainForm.Vikt.value * duration);
<input type="hidden" name="MET" value="10|5.6">
```

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

---

Tråden på webben: https://www.webforum.nu/amne/javascript/61600-plocka-ut-siffror-före-och-efter
