![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 4 Dołączył: 25.03.2011 Ostrzeżenie: (0%) ![]() ![]() |
Czy można w PHP (lub MySQL- bo dane i tak będą zapisane w bazie danych) sprawdzić wielkość liter?
Chodzi mi o to, że jeśli ciąg znaków składa się tylko z dużych liter, to chciałbym to wychwycić. Jeśli ciąg zawiera mieszane litery (zarówno małe jaki duże) lub tylko małe litery, to można go pominąć. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
przepuszczasz ciąg przez funkcję, która zmienia wszystko na duze litery. Jesli ciąg po zmianie jest taki sam jak ciąg przed zmianą, znaczy, że były tam tylko duże litery.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 4 Dołączył: 25.03.2011 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 915 Pomógł: 210 Dołączył: 8.09.2009 Skąd: Tomaszów Lubelski/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Ja bym proponował wyrażenie regularne :-)
-------------------- |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 84 Pomógł: 4 Dołączył: 25.03.2011 Ostrzeżenie: (0%) ![]() ![]() |
Ja bym proponował wyrażenie regularne :-)
W tym przypadku działa tylko jeśli ciąg jest w całości napisany z małych liter. Jeśli są zarówno małe jaki duże, to nie działa tak jakbym tego chciał. Ja zastosowałem takie coś i działa tak jak powinno.
Ten post edytował miniol 4.04.2012, 14:57:35 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Jak ty w ogóle nie myślisz.... zamien a-z na A-Z
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@redeemer, @nospor: preg_match - i nagle z jednego problemu autorowi wątku robią się dwa.
@miniol: Powinieneś raczej użyć mb_strtoupper; strtoupper może w pewnych warunkach nie rozpoznać (i w konsekwencji nie zamienić) polskich znaków: http://ideone.com/Dxi22 Ten post edytował Crozin 4.04.2012, 15:33:15 |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Crozin w pierwszym moim poście podałem normalne rozwiązanie. Kontynuowałem wątek z preg_match tylko i wyłącznie dlatego bo ktoś inny go zaczął a autor miał z nim nadal problemy. Nie rozumiem skąd więc ten przytyk w moją stronę.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@nospor: Tak właściwie to chciałem tylko zaznaczyć jak beznadziejnym pomysłem jest tutaj wyrażenie regularne - bo mimo prostego zadania obaj podaliście błędne wyrażenia.
![]() |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Oj, czepiasz się szczegółów. Ja poprawiłem jedynie logikę ze nie a-z a A-Z.
No ale proszę, poprawne w pełni wyrażenie: /^[A-Z]+$/ ps: nie zawiera polskich liter ![]() -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 915 Pomógł: 210 Dołączył: 8.09.2009 Skąd: Tomaszów Lubelski/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Dodam tylko, że rozwiązanie z wyrażeniem regularnym jest dużo szybsze
![]() -------------------- |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@redeemer: Nie powiem, zdziwiłem się widząc, że PCRE jest szybsze od mb_strtoupper (od strtoupper jest już wolniejsze).
Ale tak to już jest, że w PHP złe rozwiązanie jest nieraz lepsze, bo korzysta w większym stopniu z elementów natywnych (napisanych w C) niż PHP-owskich. :] |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 24.06.2025 - 19:10 |