[PHP]Wyrażenia regularne |
[PHP]Wyrażenia regularne |
9.06.2016, 11:20:03
Post
#1
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 5.07.2015 Ostrzeżenie: (0%) |
Czy można napisać wyrażenie żeby miedzy dwoma słowami była tylko jedna spacja ale nie koniecznie.
Np. "Kraków" czy "Nowy Świt" było poprawnie ale już "Nowy Świt(dwie spacje w środku)" czy "Nowy świt mazowiecki (3 spacje po 3 wyrazach)" już było błędem? |
|
|
9.06.2016, 11:43:20
Post
#2
|
|
Grupa: Zarejestrowani Postów: 146 Pomógł: 3 Dołączył: 28.10.2014 Ostrzeżenie: (10%) |
|
|
|
9.06.2016, 12:12:34
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 761 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
(([a-zA-ZąćęłńóśżźĄĆĘŁŃÓŚŻŹ]+)(\s){0,1}){1,2}
-------------------- |
|
|
9.06.2016, 12:25:19
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
1. Za listowanie pojedynczych liter w wyrażeniach (np.: ą, Ź) powinno się palce łamać. Od tego są klasy \pL by określać "wszystkie litery".
2. Kod ^(?:[\pL]+)(?: [\pL]+)*$ A tutaj wytłumaczenie https://regex101.com/r/mH3dO8/3
|
|
|
9.06.2016, 14:20:51
Post
#5
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 5.07.2015 Ostrzeżenie: (0%) |
1. Za listowanie pojedynczych liter w wyrażeniach (np.: ą, Ź) powinno się palce łamać. Od tego są klasy \pL by określać "wszystkie litery". 2. Kod ^(?:[\pL]+)(?: [\pL]+)*$ A tutaj wytłumaczenie https://regex101.com/r/mH3dO8/31. Jak wpiszę "ę, ą" to wyświetla mi false 2. A jak dodać aby była tylko 1 spacja w stringu lub 2 itp ? |
|
|
9.06.2016, 14:26:05
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
Cytat Jak wpiszę "ę, ą" to wyświetla mi false Pokaż kod.Cytat A jak dodać aby była tylko 1 spacja w stringu lub 2 itp ? Tylko jedna:Kod ^(?:[\pL]+)(?: [\pL]+)?$ Maksymalnie 2:Kod ^(?:[\pL]+)(?: [\pL]+){,2}$
|
|
|
9.06.2016, 14:36:12
Post
#7
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 5.07.2015 Ostrzeżenie: (0%) |
Z tym kodem zwraca 0. Może coś być z konfiguracją serwera ?
I pytanie jeśli chce jeszcze aby mogły być cyfry to dobrze to dodałem do wyrażenia? [0-9] Maksymalnie 2: Kod ^(?:[\pL]+)(?: [\pL]+){,2}$ Ten kod zawsze zwraca zero, co bym nie napisał
|
|
|
9.06.2016, 14:45:47
Post
#8
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
Dodaj modyfikator u do wyrażenia: http://ideone.com/XZ7KVj
|
|
|
10.06.2016, 08:45:36
Post
#9
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 5.07.2015 Ostrzeżenie: (0%) |
|
|
|
10.06.2016, 09:12:24
Post
#10
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
Nie dodałeś modyfikatora "u".
|
|
|
11.06.2016, 10:03:06
Post
#11
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 5.07.2015 Ostrzeżenie: (0%) |
|
|
|
11.06.2016, 11:07:12
Post
#12
|
|
Grupa: Zarejestrowani Postów: 531 Pomógł: 55 Dołączył: 3.01.2016 Skąd: Łowicz Ostrzeżenie: (0%) |
Nie prościej jest skasować powielenie spacji, i zapisać jako 1 spację.
-------------------- Szukam zleceń Symfony, Laravel, Back-End, Front-End, PHP, MySQL ...
|
|
|
12.06.2016, 06:59:01
Post
#13
|
|
Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 5.07.2015 Ostrzeżenie: (0%) |
Tzn?
|
|
|
Wersja Lo-Fi | Aktualny czas: 18.04.2024 - 13:52 |