Czy istnieje sposób wyszukiwania wzorców w dokumencie MS Word zamiast dokładnego dopasowania?
Mam dokument, w którym wszystkie miejsca dziesiętne zostały zapisane jako /
zamiast .
. Na przykład 1.02
został napisany jako 1/02
, ponieważ perska typografia używa /
zamiast .
kropki dziesiętnej.
Czy /
jest używany nie tylko do ułamków dziesiętnych i ma inne zastosowania, na przykład ułamki, procenty itp., Czy istnieje sposób na znalezienie wzoru podobnego N/M
do dokumentu słownego, gdzie N
oznacza dziesiętną, a M
także pokazuje inną liczbę dziesiętną?
microsoft-word
regex
codezombie
źródło
źródło
Odpowiedzi:
Tylko do wyszukiwania, którego możesz użyć
^#/^#
jako parametru wyszukiwania. W obszarze więcej opcji i znajdź opcję Specjalne są jeszcze inne opcje, które mogą być pomocne.Nb:,
^#
to jedno miejsce po przecinku, więc jeśli szukasz konkretnie x / yy, to byłoby^#/^#^#
itd.zamienić,
Jest to lepsza opcja, wykonaj wyszukiwanie za pomocą
([0-9])/([0-9])
i zamień na\1.\2
oraz włącz „używaj symboli wieloznacznych”źródło
Słowo
Użyj implementacji wyrażeń regularnych przez Microsoft
Naciśnij CTRL+ H»kliknij Więcej » Włącz Użyj symboli wieloznacznych
([0-9]{1,2})/([0-9]{2})
\1.\2
To wygląda na zwariowany wzorzec wyszukiwania, więc zbadajmy go:
[0-9]
oznacza pojedynczą wartość liczbową (0,1,2,3,4,5,6,7,8 i 9){1,2}
służy do zliczania wystąpień poprzedniego znaku lub wyrażenia. W naszym przypadku oznacza to: Szukaj tylko jednej lub dwóch cyfr .Uwaga: jeśli używasz niemieckiego słowa, musisz użyć
;
jako separatora zamiast,
/
nie ma specjalnego znaczenia. Dosłownie szuka ukośnika()
okrągłe nawiasy są ważne. Dzielą wzór do sekwencji logicznych, dzięki czemu możemy później wykorzystać\1
,\2
...\n
w naszym zastąpić wzorem. W ten sposób zachowujemy wartościPrzeczytaj więcej w sekcji Wyrażenia, kawałek po kawałku w artykule wsparcia Microsoft lub na stronie Graham Mayor's Word
VBA (lepsze rozwiązanie)
Sugeruję użycie metody VBA, która bardziej odpowiada domyślnym ustawieniom innych silników RegEx. Są lepiej udokumentowane i więcej osób może ci pomóc.
To makro prosi o wzorzec RegEx do przeszukania całego dokumentu i zastąpienia go podanym ciągiem.
Naciśnij ALT+, F11aby otworzyć edytor VBA. Wklej kod w dowolnym miejscu i uruchom goF5
(?!\d)/(?=\d)
.
źródło