Forum » Programiranje » [C#] Regex - samo decimalne vrednosti
[C#] Regex - samo decimalne vrednosti
FuI2cY ::
Pozdravljeni,
mene zanima kako bi lahko dobil iz stringa samo decimalne vrednosti.
primer: "nekaj123 posebej 345 dobro fain 0.25 konec kasneje 2.59"
da bi iz tega stringa dobil samo 0.25 in 2.59, brez 123 in 345 ?
S tem regexom @"[^0-9\.]+" sem še nekak najbližje prišel, vendar mi kljub temu 123 in 345 zraven zazna.
P.s. vedno je pika pri decimalnih vrednosti, ni vejic
hvala
mene zanima kako bi lahko dobil iz stringa samo decimalne vrednosti.
primer: "nekaj123 posebej 345 dobro fain 0.25 konec kasneje 2.59"
da bi iz tega stringa dobil samo 0.25 in 2.59, brez 123 in 345 ?
S tem regexom @"[^0-9\.]+" sem še nekak najbližje prišel, vendar mi kljub temu 123 in 345 zraven zazna.
P.s. vedno je pika pri decimalnih vrednosti, ni vejic
hvala
FuI2cY ::
Ne vem kako je uspelo, da je 2x objavilo. Se opravičujem za dva enaka posta. enega se lahko odstrani
urli ::
V php (verjetno v C# enako ali zelo podobno)
ali (\d je pač okrajšava za [0-9])
/(\d+\.\d+)/
ali (\d je pač okrajšava za [0-9])
/([0-9]+\.[0-9]+)/
Zgodovina sprememb…
- spremenil: urli ()
FuI2cY ::
Pozdrav, imam še eno vprašanje.
želim, da mi replace zamenja samo točno isto vrednost v stringu.
Primer:
vrednost 3.00 želim spremeniti v $3
string line = "neki text 133.00 ima dodatno vrednost 3.00 itd"
string.Replace je v tem primeru neuporaben, ker mi bo obe vrednsoti zamenjal in bom imel na koncu
line = "neki text 13$3 ima dodatno vrednost $3 itd"
z regexi pa nisem glih najbolj usklajen, zato vas prosim za pomoč. Sem poizkusil tudi z @"\b{0}\b", value in ne deluje.
So pa vedno decimalne vrednosti s piko. nič drugega, noben text.
Hvala.
Sem poskusil tudi z regexom @"\b\w*{0}\w*\b", deluje ampak ne najbolje. Če pride do vrednosti npr 0.72, mi naredi 0.72.72
Sem poskusil tudi z regexom @"\b\w*{0}\w*\b", deluje ampak ne najbolje. Če pride do vrednosti npr 0.72, mi naredi 0.72.72
želim, da mi replace zamenja samo točno isto vrednost v stringu.
Primer:
vrednost 3.00 želim spremeniti v $3
string line = "neki text 133.00 ima dodatno vrednost 3.00 itd"
string.Replace je v tem primeru neuporaben, ker mi bo obe vrednsoti zamenjal in bom imel na koncu
line = "neki text 13$3 ima dodatno vrednost $3 itd"
z regexi pa nisem glih najbolj usklajen, zato vas prosim za pomoč. Sem poizkusil tudi z @"\b{0}\b", value in ne deluje.
So pa vedno decimalne vrednosti s piko. nič drugega, noben text.
Hvala.
Sem poskusil tudi z regexom @"\b\w*{0}\w*\b", deluje ampak ne najbolje. Če pride do vrednosti npr 0.72, mi naredi 0.72.72
Pozdrav, imam še eno vprašanje.
želim, da mi replace zamenja samo točno isto vrednost v stringu.
Primer:
vrednost 3.00 želim spremeniti v $3
string line = "neki text 133.00 ima dodatno vrednost 3.00 itd"
string.Replace je v tem primeru neuporaben, ker mi bo obe vrednsoti zamenjal in bom imel na koncu
line = "neki text 13$3 ima dodatno vrednost $3 itd"
z regexi pa nisem glih najbolj usklajen, zato vas prosim za pomoč. Sem poizkusil tudi z @"\b{0}\b", value in ne deluje.
So pa vedno decimalne vrednosti s piko. nič drugega, noben text.
Hvala.
Sem poskusil tudi z regexom @"\b\w*{0}\w*\b", deluje ampak ne najbolje. Če pride do vrednosti npr 0.72, mi naredi 0.72.72
Zgodovina sprememb…
- spremenil: FuI2cY ()
FrEaKmAn ::
Kako se vrednosti 133.00 and 3.00 razlikujeta? V številu celih števil? Ker lahko enostavno matchaš številko, ki imamo samo eno celo število z
torej to bo matchalo 3.00, 4.00, 5.12356 vendar NE 33.00. Primer https://regex101.com/r/vZ3pM8/1
Je to to? Ali želiš nekaj drugega?
\b(\d\.\d+)\b
torej to bo matchalo 3.00, 4.00, 5.12356 vendar NE 33.00. Primer https://regex101.com/r/vZ3pM8/1
Je to to? Ali želiš nekaj drugega?
Zgodovina sprememb…
- spremenil: FrEaKmAn ()
FuI2cY ::
jaz bi rad, da išče strikno to cifro (whole word)
torej če iščem npr. 3.00, more najdit strikno samo 3.00, ne znotraj 13.00 ali 133.00 itd., če iščem 133.00, potem išče samo za 133.00, ne npr 1133.00
torej če iščem npr. 3.00, more najdit strikno samo 3.00, ne znotraj 13.00 ali 133.00 itd., če iščem 133.00, potem išče samo za 133.00, ne npr 1133.00
FuI2cY ::
ne samo 3.00, karkoli je lahko. To sem samo kot primer dal.
vrednost je lahko 239.91 (vedno na dve decimalki), 1.09, 0.29 ... torej vrednost se spreminja in obvezno k išče in potem replace-a v stringu, more whole word upoštevat. Torej če je vrednost, 1.09 potrebno zamenjati z 2.99, potem more samo vrednost 1.09 zamenjati, ne npr. 11.09 (isto vsebuje 1.09, tega ne sme)
vrednost je lahko 239.91 (vedno na dve decimalki), 1.09, 0.29 ... torej vrednost se spreminja in obvezno k išče in potem replace-a v stringu, more whole word upoštevat. Torej če je vrednost, 1.09 potrebno zamenjati z 2.99, potem more samo vrednost 1.09 zamenjati, ne npr. 11.09 (isto vsebuje 1.09, tega ne sme)
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | C# Regex.Replace()Oddelek: Programiranje | 949 (868) | D-monLord |
» | HttpWebResponse CharacterSetOddelek: Programiranje | 1009 (880) | Senzacionale |
» | c# regularni izrazOddelek: Programiranje | 2015 (1713) | darkolord |
» | regexOddelek: Programiranje | 1187 (931) | l0g1t3ch |
» | [php]: preprost problem in preg_replace()Oddelek: Izdelava spletišč | 1133 (1071) | R33D3M33R |