Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Spectrik 18 Ledna 2015, 12:06:49

Název: Vyhledávání v řetězci
Přispěvatel: Spectrik 18 Ledna 2015, 12:06:49
Ahoj, tak už zase otravuju :)

mám řádek:  Temperature=23°C:Humidity=54%

a potřeboval bych z něho vytáhnout ty číselné hodnoty (bez jednotky) do proměnné. Zkoušel jsem regulární výrazy, ale nikdy předtím jsem s nima nedělal tak je to celkem porod. Zkoušel jsem něco jako:

Temperature=[0-9]{1,2}°C$

No zkoušel jsem toho dost, ale nic mi nefungovalo :( :D Potřeboval bych popostrčit :) Díky.
Název: Re:Vyhledávání v řetězci
Přispěvatel: Petr Merlin Vaněček 18 Ledna 2015, 12:32:52
Já vím, že se tu NTZ bude chytat za hlavu, ale cest je určitě více.
Třeba tato:
Kód: [Vybrat]
$ echo "Temperature=23°C:Humidity=54%" | awk -F'[=°%]' '{ print $2 " " $4 }'
23 54

Odchytit do proměnné by už neměl být problém :)
Název: Re:Vyhledávání v řetězci
Přispěvatel: Spectrik 18 Ledna 2015, 12:55:31
Já vím, že se tu NTZ bude chytat za hlavu, ale cest je určitě více.
Třeba tato:
Kód: [Vybrat]
$ echo "Temperature=23°C:Humidity=54%" | awk -F'[=°%]' '{ print $2 " " $4 }'
23 54

Odchytit do proměnné by už neměl být problém :)

Mě to vypisuje 23 C:Humidity
Název: Re:Vyhledávání v řetězci
Přispěvatel: ntz_reloaded 18 Ledna 2015, 12:56:26
a co na to jit ve dvou krocich uplne jednoduse :), tohle je prvni krok:

Kód: [Vybrat]
> echo 'Temperature=23°C:Humidity=54%' | sed 's/[^0-9:]//g'
23:54
druhej krok necht tazatel doplni sam
Název: Re:Vyhledávání v řetězci
Přispěvatel: Spectrik 18 Ledna 2015, 13:10:37
a co na to jit ve dvou krocich uplne jednoduse :), tohle je prvni krok:

Kód: [Vybrat]
> echo 'Temperature=23°C:Humidity=54%' | sed 's/[^0-9:]//g'
23:54
druhej krok necht tazatel doplni sam

díky moc