Chcę podświetlić wszystkie numery (nie pojedyncze cyfry!) W VIM:
- wszystkie liczby (gdziekolwiek w dokumencie) z / bez „.” lub „,”
- wszystkie liczby (gdziekolwiek w dokumencie) o wartości ujemnej
p.e.
8.20
8,500
-2.40
28.000.000
1000,2 etc
„.” lub „,” musi być uwzględniony w podświetleniu, jeśli w obrębie liczby.
1 lub 1. -> musi podświetlić tylko „1”
Również liczby ujemne muszą być podświetlone (w tym „-”), ale nie wtedy, gdy przed „-” znajduje się inna cyfra.
p.e. -5-6-7-8-9-10
musi podkreślić -5,6,7,8,9,10
Liczba ujemna musi być postrzegana jako negatywnaliczba, a nie jako liczba ujemna i dodatnia p.e. „-5” należy wyróżnić jako „-5”, a nie jako „-5” i „5” Powodem jest to, że kopiuję wszystkie mecze i nie chcę znaleźć dwóch meczów, w których jest tylko numer („-5”)
„--5” należy podświetlić jako wartość dodatnią „5”
Stworzyłem to wyrażenie regularne:
%(d)@<![-]*d{1,}([.,]d+)*
ale podświetla liczby ujemne dwa razy (jako liczbę ujemną i jako liczbę bez znaku „-”)
Odpowiedzi:
1 dla odpowiedzi № 1%([0-9-]@<!-)?d[0-9,.]*
Dość dziwne wymagania, myślę, że takwszystko, o czym wspomniałeś, ale nie masz pewności co do warunku „--5” - czy to oznacza, że chcesz, aby parzysta liczba znaków „-” nie pasowała? To nie robi tego.
EDYTUJ: Zaktualizowany, aby zabronić wielu -
znaki przed numerem. Nie jestem pewien, czy to naprawdę to, czego chcesz - rozważ ---5
na przykład.