Mam ponad 500 adresów MAC i próbuję znaleźć prosty sposób wstawiania dwukropków między co 2 znakami.Wstawianie dwukropków do listy adresów MAC
Odpowiedz
Jeśli jest to jednorazowa rzecz, dlaczego nie używać emacs z makrem klawiatury?
Można dostać Notepad ++ i do wyszukiwania i zastąpić regex jak poszukiwaniu (..) i zastąpić \ 1:
to może przesada, ale chciałbym używać Excel. Wklej adresy MAC w kolumnie A i ta formuła w kolumnie B:
=LEFT(A1,2)&":"&MID(A1,3,2)&":"&MID(A1,5,2)&":"&MID(A1,7,2)&":"&MID(A1,9,2)&":"&RIGHT(A1,2)
Następnie można copy
kolumna B, i albo paste special...values
w kolumnie C lub po prostu wkleić do Notatnika.
Można użyć sed polecenie takie jak to:
sed 's/\(\w\w\)\(\w\w\)\(\w\w\)\(\w\w\)\(\w\w\)\(\w\w\)/\1:\2:\3:\4:\5:\6/g' filename
To będzie po prostu wyciągnąć 12 znaków w grupach po dwa, i pluć je z powrotem z dwukropkiem w środku. Możesz także wypróbować prostszy wzorzec, taki jak s/(\ w \ w)/\ 1:/g, ale spowoduje to dodanie dodatkowego dwukropka na końcu każdego adresu.
Pokonaj mnie! Wracając do twojego ostatniego sentymentu, możesz użyć innej komendy sed, aby usunąć ciągnący się dwukropek, a może on być jeszcze krótszy. – SingleNegationElimination
Nie wszystkie wersje "sed" wsparcia "\ w" oznaczają słowo-znak. Większa precyzja w dopasowaniu ("[0-9a-fA-F]") sprawiłaby, że iteracyjne rozwiązanie byłoby lepsze. –
Osobiście pewnie zrobiłbym to w Perlu, ale muszę upragnić przyzwoicie prosty sposób na Regex. perl -e "while (<>) {$ _ = ~ s/(\ w {2})/1 $:/g; s /: $/$ /;}" .. Myślę, że można to zrobić . –
= ZŁOTO (MID (A2; 1; 2); ":"; MID (A2; 3; 2); ":"; MID (A2; 5; 2); ":"; MID (A2; 7; 2); ":"; MID (A2, 9, 2))
powinno pomóc w OpenOffice
= ZŁĄCZ.TEKSTY (MID (A7,1,2), ":", MID (A7 , 3,2), ":", MID (A7,5,), ":", MID (A7,7,2), ":", MID (A7,9,2), ":", MID (A7,11,2))
Tutaj to jest w programie Excel, użyłem odpowiedź powyżej i zbudowane od niego, Dzięki
Linux, UNIX - Bash
Given a address like MACstr="cc0deca96acf"
MACfiexd=$(sed -e 's/.\{2\}/&:/g;s/.$//' <<<$MACstr)
echo "$MACfixed"
cc:0d:ec:a9:6a:cf
Oto krótki przykład PowerShell:
$macs = Get-Content C:\temp\MAC.txt
$output = foreach ($mac in $macs){
$mac.insert(2,":").insert(5,":").insert(8,":").insert(11,":").insert(14,":")
}
$output | Out-File c:\temp\newmac.txt
$macs = Get-Content C:\temp\MAC.txt
$output = foreach ($mac in $macs){
$mac.insert(2,":").insert(5,":").insert(8,":").insert(11,":").insert(14,":")
}
$output | Out-File c:\temp\newmac.txt
Dzięki Jonathan Walz! Pracował jak CHARM!
użyłem następujących czynności, aby dodać adres MAC dwukropka do istniejącej tabeli HTML w vim:
:%s/<td> \([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\)\([0-9a-zA-Z]\{2\}\) <\/td>/<td> \1:\2:\3:\4:\5:\6 <\/td>/g
rozwiązanie Matta za pomocą Notepad ++, ale dostrojone tylko do linii tego zmienić (tylko) zawierają adres mac:
znajdują się: ^(..)(..)(..)(..)(..)(..)$
Replace: \1:\2:\3:\4:\5:\6
- 1. Używaj podwójnych dwukropków (: :) w #define
- 2. Ustawianie białej listy adresów IP Apache
- 3. Haskell: Wstawianie każdej linii z pliku do listy
- 4. Wstawianie i usuwanie do/z posortowanej listy w Pythonie
- 5. Wstawianie ciąg do listy bez uzyskiwania podzielić na znaki
- 6. Ponowne wstawianie NA do wektora
- 7. Wstawianie obrazu do ggplot2
- 8. Wstawianie daty do db2
- 9. Wstawianie wideo do Mediastore
- 10. Wstawianie do dwóch tabel
- 11. Wstawianie obiektów do MongoDB
- 12. Wstawianie do bazy danych
- 13. Odejmowanie niepodzielnych adresów adresów
- 14. Wstawianie zmiennej do zapytania SQL z Javy
- 15. Oprogramowanie do skracania adresów URL?
- 16. Wstawianie przycisku html jako ostatniego elementu listy autouzupełniania jquery ui
- 17. Wstawianie daty systemowej do oracle
- 18. Wstawianie nazwy pliku do bazy
- 19. wstawianie niestandardowego tekstu do ggplot2
- 20. Wstawianie przecinków do liczb całkowitych
- 21. Wstawianie obrazu do bazy danych
- 22. Wstawianie symboli Unicode do edittext
- 23. Wstawianie plików do ponownego załadowania
- 24. Wstawianie obrazu do wielokropka TCPDF
- 25. list extend() do indeksu, wstawianie elementów listy nie tylko do końca
- 26. LINQ/Lambda OrderBy Delegat listy <string> adresów IP
- 27. Drukowanie adresów adresów w C [dwa pytania]
- 28. Używanie Perla do uzyskania listy adresów IP z Cisco Call Manager
- 29. Pandy DataFrame do listy Listy
- 30. openxml - wstawianie wiersza, przenoszenie innych
Dlaczego '\ 1-' wstawić dwukropek? –
Woops sorry powinno być \ 1: – Matt