Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 35533|Odpowiedź: 1

[Źródło] Podstawy wyrażeń regularnych

[Skopiuj link]
Opublikowano 18.06.2019 21:38:16 | | |
Ten post został ostatnio edytowany przez Kongcicadę 18.06.2019 o 21:39

przedmowa
Podczas dopasowywania danych, kwalifikacji reguł oraz analizy danych z crawlera w projekcie będziemy używać wyrażeń regularnych. Poniżej znajduje się podsumowanie podstawowej wiedzy o regularności, z których wszystkie są notatkami z wczesnych lat.

Tekst

#Podstawy wyrażeń regularnych


.           Reprezentuje dowolny pojedynczy znak inny niż \n
[ ] Filtrowanie znaków
[^] Równoważne z non
|           Oznacza lub
() Zmień priorytet operacji.
* kwalifikator, który oznacza, że poprzednie wyrażenie pojawia się 0 lub więcej razy.
+ kwalifikator, oznaczając, że poprzedzające wyrażenie musi pojawić się 1 lub więcej razy. Musi się pojawić przynajmniej raz.
?          kwalifikatory, wskazujące, że poprzednie wyrażenie musi pojawić się 0 lub 1 razy.
{n}, który kwalifikuje wyrażenie poprzedzające, musi wystąpić n razy.
{n,}, który kwalifikuje poprzedzające wyrażenie do występowania co najmniej n razy.
{n,m}, który kwalifikuje poprzedzające wyrażenie do występowania co najmniej n razy i maksymalnie m razy.
^ $ to początek i koniec ciągu
\d jest równoważne [0-9]  
\D jest równoważne [^0-9]
\s oznacza wszystkie te niewidoczne znaki w białych spacjach,
\S to wszystkie znaki oprócz \s.
\w Oznacza [0-9a-zA-Z_]
\w to wszystkie pozostałe postacie oprócz \w.
\b oznacza granicę słowa. (Twierdz, tylko sędzia, niedopasowanie.) )
=================================================


.    Reprezentuje dowolny pojedynczy znak inny niż \n
a.b
a,b
=========================================
[ ] Filtrowanie znaków
a[0-9]b
a[a-z]b

a[0-9a-zA-Z]b
a1b
axb
aAb

a[^0-9]b oznacza, że tylko pojedynczy znak inny niż 0123456789 może pojawić się pomiędzy a a b.

a[^0-9a-z]b

=====================================================
|  Oznacza lub


z|food bo| ma bardzo niski priorytet, więc to wyrażenie może pasować do z lub food. To wyrażenie nie pasuje do zood

(z|f)ood oznacza zood lub jedzenie

===========================================
() Zmień priorytet operacji.

Grupa ewakuacyjna.

=======================================
* kwalifikator, który oznacza, że poprzednie wyrażenie pojawia się 0 lub więcej razy.

zoo* oznacza zoo zooo
(zoo)* oznacza zoozoo.......
a.*b oznacza AB AADDDDB AFJDSKLF%$#@dsklfjdsklfjdsklfjb


================================================
+ kwalifikator, oznaczając, że poprzedzające wyrażenie musi pojawić się 1 lub więcej razy. Musi się pojawić przynajmniej raz.

a.+b
a9dfjsakl3824urnj324239feb
==================================================
? kwalifikatory, wskazujące, że poprzednie wyrażenie musi pojawić się 0 lub 1 razy.

a.? b
AB
axb


? Inną funkcją jest "zakończenie trybu chciwości". Wyrażenia regularne domyślnie przechodzą w tryb chciwości.

======================================================================
a[0-9]+b

a0b
a00b
a09b
a99999999999999999999b


========================== inne kwalifikacje =====================
{n}, który kwalifikuje wyrażenie poprzedzające, musi wystąpić n razy.
a[0-9]{10}b
a1234567899b
======================
{n,}, który kwalifikuje poprzedzające wyrażenie do występowania co najmniej n razy.

1[a-z]{3,}2
1axffdsafdsafdasfdsafdsafdsafdsfdsafdsfdsa2



========================================
{n,m}, który kwalifikuje poprzedzające wyrażenie do występowania co najmniej n razy i maksymalnie m razy.

a[0-9]{3,7}b
a0000000b

===========================================

^ oznacza początek struny

$ oznacza koniec łańcucha.


^ i $ oznaczają dwie cechy ciągu łańcucha. Jeden oznacza element początkowy, a drugi koniec


^abc.*xyz$ ^abc122345xyz$   

^abcdefg$ ^abcdefg


fdsfdsfxyz xyz$



===========================================
a[0-9]b
a\db

\dRównoważny [0-9]
Cyfrowe

\D [^0-9]


\s oznacza wszystkie te białe, niewidzialne znaki
a\s*b
AB
a                                            




b

\S to wszystkie znaki oprócz \s.



=================================================
\w [0-9a-zA-Z_]  
Słowo oznacza słowo znak.

\w to wszystkie pozostałe postacie oprócz \w.

\b oznacza granicę słowa. (Twierdz, tylko sędzia, niedopasowanie.) )

============================================

.


Poniższe metody mogą wskazywać, że dowolny pojedynczy znak pojawia się pomiędzy brzuchem.
a[\s\S]b
a[\d\D]b
a[\w\W]b






#Rzeczywista walka

1: Stwórz nową aplikację konsolową

2: Wklej poniższy kod, możesz testować moduł po module






Epilog

Test online wyrażenia regularnego   Logowanie do linku jest widoczne.
















Poprzedni:mysql jak zmienić hasło użytkownika root
Następny:Java Reactor - Przeorganizuj swój kod Java
Opublikowano 05.05.2020 16:32:41 |
Pełna lista powszechnie używanych wyrażeń regularnych
https://www.itsvse.com/thread-9181-1-1.html
(Źródło: Architect_Programmer)
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com