Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Vávra V. 18. 02. 2013, 13:53:13
-
Dobrý den, poradíl by někdo jak můžu v bashi zjistit jestli proměnná obsahuje pouze jednu tečku? Děkuji za pomoc
V.V.
-
Asi nemyslíte toto:
[ "$x" = '.' ]
že? :)
Ptáte se, zda řetězec obsahuje právě nebo nanejvýš jednu tečku?
-
Co třeba tohle:
echo $x | grep -q '^[^.]*\.[^.]*$'
-
Ptáte se, zda řetězec obsahuje právě nebo nanejvýš jednu tečku?
Omlouvám se, napsal jsem to špatně!
Potřebuji podmínku, která vyhodnotí jestli je v řetězci pouze jedna jediná tečka.
Děkuji
-
Trochu těžkotonážní, ale bez dlouhého hrání si s regulárama:
$ echo "Bob a Bobek"|awk 'BEGIN { FS="." } {print NF}'
1
$ echo "Bo.b a Bobek"|awk 'BEGIN { FS="." } {print NF}'
2
$ echo "Bo.b a Bob.ek"|awk 'BEGIN { FS="." } {print NF}'
3
$ echo "Bo.b a Bob.ek."|awk 'BEGIN { FS="." } {print NF}'
4
$ echo ""|awk 'BEGIN { FS="." } {print NF}'
0
$ echo "."|awk 'BEGIN { FS="." } {print NF}'
2
$ echo "...."|awk 'BEGIN { FS="." } {print NF}'
5
-
Nebo:
$ echo "Bob a Bobek"|egrep -o '\.'
$ echo "Bob a. Bobek"|egrep -o '\.'
.
$ echo "Bob a. Bob .ek"|egrep -o '\.'
.
.
$ echo "Bob a. Bob .ek ."|egrep -o '\.'
.
.
.
$ echo "Bob a. Bob .ek ."|egrep -o '\.'
.
.
.
$ echo " ."|egrep -o '\.'
.
$ echo " . ."|egrep -o '\.'
.
.
-
Jde to i pomoci prostredku samotneho bashe:
case "$promenna" in
*.*.*) echo vic nez jedna tecka;;
*.*) echo jedna tecka;;
*) echo zadna tecka;;
esac
-
A co takhle:
$x="Nejakej text co chci testovat"
$a="znak ktery hledam"
# Tohle vrati pocet okurenci v radku
echo $x | grep -o "$a" | wc -l
a pak uz jenom podminka pro pocet okurenci ktere pozaduji...
-
Díky, díky ;)
Chlapy a jak by se dalo jednoduše zjistit jestli proměnná obsahuje správný tvar a znaky pro doménu?
Čili jen 0-9, -, a-z a nesmí začínat ani končit jiným znakem než 0-9 nebo a-z?
Děkuji za pomoc
-
Díky, díky ;)
Chlapy a jak by se dalo jednoduše zjistit jestli proměnná obsahuje správný tvar a znaky pro doménu?
Čili jen 0-9, -, a-z a nesmí začínat ani končit jiným znakem než 0-9 nebo a-z?
Děkuji za pomoc
Hm.
http://www.regular-expressions.info/examples.html (http://www.regular-expressions.info/examples.html)
http://net.tutsplus.com/tutorials/other/8-regular-expressions-you-should-know/ (http://net.tutsplus.com/tutorials/other/8-regular-expressions-you-should-know/)
http://en.wikipedia.org/wiki/Regular_expression (http://en.wikipedia.org/wiki/Regular_expression)
-
:o
[[ $ajta =~ $krajta ]]
-
Hm.
http://www.regular-expressions.info/examples.html (http://www.regular-expressions.info/examples.html)
http://net.tutsplus.com/tutorials/other/8-regular-expressions-you-should-know/ (http://net.tutsplus.com/tutorials/other/8-regular-expressions-you-should-know/)
http://en.wikipedia.org/wiki/Regular_expression (http://en.wikipedia.org/wiki/Regular_expression)
Tak jsem to nesesmolil, nějaký lepší typ? Díky
-
Ty vole proc by ti to nekdo mel jako komplet psat?
Napis co presne nepochopils z tech odkazu, co si uz zkousel a melo to delat, ale nedela. Vocasum, co maj nulovou snahu, nas...
-
Tazatel neumi pouzivat google? :) Jak je to s tou rybou a prutem? Nauc chytat, nedavej rybu? 8)
Co treba... http://stackoverflow.com/questions/1128168/validation-for-url-domain-using-regex-rails (http://stackoverflow.com/questions/1128168/validation-for-url-domain-using-regex-rails) ??
-
Jde to i pomoci prostredku samotneho bashe:
case "$promenna" in
*.*.*) echo vic nez jedna tecka;;
*.*) echo jedna tecka;;
*) echo zadna tecka;;
esac
Hezké řešení!
-
Jde to i pomoci prostredku samotneho bashe:
case "$promenna" in
*.*.*) echo vic nez jedna tecka;;
*.*) echo jedna tecka;;
*) echo zadna tecka;;
esac
retezec "..aaa"? :)
Hezké řešení!