Jak mogę sprawdzić, czy ciąg zawiera angielskie litery (od A do Z) w Objective-C? W PHP istnieje metoda preg_match dla tego.Jak sprawdzić, czy ciąg zawiera litery angielskie (A-Z)?
Odpowiedz
Jednym ze sposobów jest użycie wyrażeń regularnych - klasa NSRegularExpression
. Poniżej przedstawiono, w jaki sposób można wykryć angielskie litery, ale wzór może zostać zmodyfikowany, aby pasował tylko wtedy, gdy cały ciąg składa się z takich liter. Coś jak ^[a-zA-Z]*$
.
NSRegularExpression *regex = [[[NSRegularExpression alloc]
initWithPattern:@"[a-zA-Z]" options:0 error:NULL] autorelease];
// Assuming you have some NSString `myString`.
NSUInteger matches = [regex numberOfMatchesInString:myString options:0
range:NSMakeRange(0, [myString length])];
if (matches > 0) {
// `myString` contains at least one English letter.
}
Alternatywnie, można skonstruować NSCharacterSet
zawierający znaki, które Cię interesują i używać NSString
„s rangeOfCharacterFromSet:
aby znaleźć pierwsze wystąpienie jednego. Powinienem zauważyć, że ta metoda znajduje tylko pierwszy taki znak w ciągu znaków. Może nie to, czego szukasz.
Wreszcie, czuję, że można coś zrobić z kodowaniem, ale nie zastanawiałem się zbyt wiele. Być może określić, czy ciąg znaków może być reprezentowany za pomocą ASCII (przy użyciu canBeConvertedToEncoding:
), a następnie sprawdzić numery/symbole?
Aha, i zawsze możesz powtórzyć ciąg i sprawdzić każdą postać! :)
Można użyć NSRegularExpression
Class (dokumentacja Apple od klasy mogą być oglądane here)
Można również użyć NSCharacterSet i użyć rangeOfCharacterFromSet: Metoda aby sprawdzić, czy wrócił NSRange jest cała gama łańcucha. characterSetWithRange byłby dobrym miejscem do rozpoczęcia tworzenia swojej postaci.
Możesz użyć prostego testu NSPredicate
.
NSString *str = @"APPLE";
NSString *regex = @"[A-Z]+";
NSPredicate *test = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
BOOL result = [test evaluateWithObject:str];
- 1. Jak mogę sprawdzić, czy ciąg zawiera litery w Swift?
- 2. Jak mogę sprawdzić, czy ciąg zawiera tylko litery w Pythonie?
- 3. Jak mogę sprawdzić, czy ciąg zawiera tylko litery?
- 4. Jak mogę sprawdzić, czy ciąg znaków zawiera DOWOLNE litery alfabetu?
- 5. Sprawdź, czy ciąg zawiera wiodące litery
- 6. Aby sprawdzić, czy ciąg zawiera określone słowo
- 7. sprawdzić, czy ciąg zawiera numer większy niż
- 8. Groovy/Grails zawiera małe litery
- 9. Jak sprawdzić, czy ciąg zawiera tylko cyfry/znaki numeryczne?
- 10. Jak sprawdzić, czy TextView zawiera określony ciąg znaków
- 11. Ruby: Jak sprawdzić, czy ciąg zawiera wiele elementów?
- 12. Jak mogę sprawdzić, czy tablica ciągów zawiera określony ciąg znaków?
- 13. Jak mogę sprawdzić, czy ciąg zawiera znaki wielobajtowe w JavaScript?
- 14. Ruby - Jak sprawdzić, czy ciąg zawiera wszystkie słowa w tablicy?
- 15. Jak sprawdzić, czy ciąg zawiera tylko znaki alfanumeryczne i myślniki?
- 16. Jak mogę sprawdzić, czy ciąg zawiera chiński w Swift?
- 17. W języku C#, jak sprawdzić, czy ciąg zawiera liczbę całkowitą?
- 18. java - Jak sprawdzić, czy ciąg zawiera zarówno literę i numer
- 19. Jak sprawdzić, czy ciąg zawiera część innego ciągu w C#?
- 20. Jak sprawdzić, czy ciąg zawiera http: // na początku
- 21. Jak sprawdzić, czy tablica znaków zawiera jeden ciąg w JavaScript?
- 22. Jak sprawdzić, czy ciąg znaków zawiera listę znaków?
- 23. Jak sprawdzić, czy tablica zawiera ciąg znaków w maszynopisie?
- 24. PHP - Jak sprawdzić, czy ciąg zawiera dowolny tekst?
- 25. Sprawdź, czy ciąg zawiera podłańcuch
- 26. Zaznacz dowolną komórkę bez określonych znaków (małe litery az) wewnątrz
- 27. Sprawdź, czy ciąg mają wielkie litery, małe litery i numer
- 28. Jak sprawdzić, czy zmienna VARCHAR zawiera podłańcuch?
- 29. sprawdzić, ile razy ciąg zawiera znak „g” w kwalifikujących ciąg
- 30. Jak sprawdzić, czy tekst zawiera tylko liczby?
* Zawiera * lub * zawiera tylko *? –