Как видно из названия, какой из них лучше соответствует числам, [[:digit:]]
или [0-9]
?
Я использую оболочку bash
Спасибо :)
Единственная причина, по которой [[:digit:]]
должен использоваться для поддержки языков, в которых используются цифры, отличные от 0-9
. Например, арабско-индийские цифры: ٠١٢٣٤٥٦٧٨٩
(Unicode от U + 0660 до U + 0669). В противном случае для индо-арабских цифр 0123456789
, [0-9]
работает одинаково хорошо [[:digit:]]
.
# time grep -oE '[[:digit:]]' /etc/services
...
real 0m0.029s
user 0m0.017s
sys 0m0.013s
# time grep -oE '[0-9]' /etc/services
...
real 0m0.029s
user 0m0.016s
sys 0m0.012s
Я мог бы, вероятно, написать быстрый сценарий для их усреднения, и, держу пари, я обнаружил бы, что средние значения идентичны, но это определенно дает вам идею.