Extrahera nummer från text

Klistra in vilken rörig källa som helst – en faktura, en skrapad produktsida, en chattlogg eller en CSV med kommentarer – och få tillbaka en ren lista över varje tal den innehåller. Heltal, decimaler, negativa tal och belopp känns igen i en enda regex-genomgång. Utdata är avdubblerat, ett tal per rad, klart att släppa in i ett kalkylblad, en miniräknare eller ett statistikverktyg.

Hur du hämtar siffror från text

  1. 1

    Klistra in källan

    Släpp in texten, hur stökig den än är – omgivande ord och skiljetecken ignoreras.

  2. 2

    Välj precision

    Slå på "Inkludera decimaler" för att fånga `3.14`, eller stäng av det för att bara extrahera heltal som `42`.

  3. 3

    Kör extraheraren

    Varje match hämtas, unika värden lagras och du får antalet olika tal som hittats.

  4. 4

    Kopiera listan

    Ett tal per rad, redo att klistras in i Excel, Numbers eller något annat verktyg för kolumnbaserad bearbetning.

Vad matcharen känner igen

Den regex som används är /-?\d+(?:\.\d+)?/ när decimaler är aktiverade och /-?\d+/ annars. Det täcker de vanligaste taluttrycken utan att fastna i tvetydigheter kopplade till lokala inställningar.

Exempel på fångade värden

Inmatning Fångat (decimaler PÅ)
Totalt: 1299.99 efter moms 1299.99
Temperaturen sjönk till -4.5C -4.5
Version 2.1.3 släpptes idag 2.1, 3
ID: 001, 042, 1007 001, 042, 1007
Poäng: 87% godkänt 87

Vad det inte försöker hantera

  • Tusentalsavgränsare. 1,234.56 extraheras som 1 och 234.56. Rensa avgränsarna först om du behöver hela talet.
  • Europeiskt decimalkomma. 3,14 läses som 3 och 14. Byt komman mot punkter före extraktionen.
  • Vetenskaplig notation. 6.02e23 returnerar 6.02 och 23. Tolka den råa källan själv om du behöver exponentformen.
  • Bråk. 1/2 blir 1 och 2, inte 0.5.

Användbara efterföljande steg

  • Skicka listan till ett statistikverktyg för att få medelvärde, median och standardavvikelse.
  • Sortera och avlägsna duplikater med sort | uniq för att identifiera unika värden i en logg.
  • Jämför två utdrag parallellt för att identifiera saknade poster i en faktura.

Vanliga frågor

Den ignorerar symbolerna och returnerar bara den numeriska delen. $1,299.99 blir 1 och 299.99 eftersom kommatecknet inte behandlas som en tusentalsavgränsare. Ta bort kommatecknen från källan om du vill ha 1299.99 i ett stycke.

Regexen fångar sifferföljden bokstavligt, så 007 förblir 007. Det spelar roll när talen egentligen är ID:n, artikelnummer eller postnummer snarare än aritmetiska värden.

Som standard tas duplikater bort så att du får en ren och tydlig lista. Om du behöver den ursprungliga strömmen med bevarad ordning, kan du istället behandla källdata via en pipelin i grep-stil.

Texten bearbetas inom förfrågan och lagras inte efter svar; din inmatning förvaras inte någonstans.

Relaterade verktyg

Verktyget finns på andra språk