Za pomocą Notepad ++ próbuję zamienić ciąg znaków (w pliku binarnym ) w następujący sposób:
A NUL
p NUL
p NUL
l NUL
eNUL
Z innym ciągiem takim jak ten:
O NUL
r NUL
a NUL
n NUL
g NUL
eNUL
Więc...
Korzystając z następującego formatu wyrażenia regularnego wyszukiwania, N ++ stwierdza, że wszystkie wystąpienia tekstu docelowego są w porządku:
A \x00
p \x00
p \x00
l \x00
e\x00
Ale przy użyciu następującego ciągu zastępującego, takiego jak ten:
O \x00
r \x00
a \x00
n \x00
g \x00
e\x00
Zastępuje wszystkie znalezione wystąpienia:
ONUL
...i to wszystko. Wszystko w ciągu zastępującym po pierwszym NUL
jest ignorowane. Poszukałem go, przejrzałem wiki N ++ i być może tęskniłem, ale nie widzę nic, co by wyjaśniało, dlaczego tak się dzieje. Wydaje się, że jest to kwestia „zakończenia zerowego”, ale czy wyszukiwanie i zamiana nie powinny być na tyle sprytne, aby sobie z tym poradzić? Czy używam tego źle?
źródło
\xFF\xFE
? Jeśli jest otwarty z poprawnym kodowaniem, a następnie wyszukiwania i zamienne struny będzie tylkoApple
iOrange
wszystko powinno działać normalnie.*.accdb
.Search with special characters
zamiast z wyrażeniami regularnymi.\x00
.” To, że pracuję z accdb, nie ma znaczenia dla pytania.