Jak dopasować alfabet francuski i rosyjski cyrylicy za pomocą wyrażenia regularnego? Chcę tylko wykonywać znaki alfabetu, bez cyfr i znaków specjalnych. Teraz mamJak dopasować znaki cyrylicy za pomocą wyrażenia regularnego
[a-zA-Z]
Jak dopasować alfabet francuski i rosyjski cyrylicy za pomocą wyrażenia regularnego? Chcę tylko wykonywać znaki alfabetu, bez cyfr i znaków specjalnych. Teraz mamJak dopasować znaki cyrylicy za pomocą wyrażenia regularnego
[a-zA-Z]
To zależy od Twojego smaku wyrażeń regularnych. Jeśli obsługuje klasy znaków Unicode (na przykład .NET), \p{L}
dopasowuje literę (w dowolnym zestawie znaków).
Co powiesz na to w Javie? –
regex różne dialekty używać [:alpha:]
dla każdego znaku alfanumerycznego w bieżącej lokalizacji. (Może być konieczne umieszczenie tego w klasie znaków, np. [[:alpha:]]
.)
Jeśli regex obsługuje bloków Unicode można dopasować rosyjskim (cyrylica) znaków z:
[\p{IsCyrillic}]
przeciwnym razie spróbuj:
[U+0400–U+04FF]
Objaśnienie:
[\p{IsCyrillic}]
Options: Case insensitive; Exact spacing; Dot doesn’t match line breaks; ^$ don’t match at line breaks; Numbered capture
Match a character from the Unicode block “Cyrillic” (U+0400–U+04FF) «[\p{IsCyrillic}]»
Wątek wyjaśnia, że http://stackoverflow.com/questions/7926514/matching-cyrilic-symbols-in-c-sharp –
Jeśli yo u używać nowoczesnej wersji PHP - po prostu:
preg_match("/^[\p{L}]+$/u");
nie zapomnij u flag na wsparcie dla Unicode!
Regex dopasować cyrylicy alfabetów z normalnymi (angielski) alfabetów:
^[[email protected]?#"$%&:;() *\+,\/;\-=[\\\]\^_{|}<>\u0400-\u04FF]*$
Pasuje specjalne znaki alfabetów, cyrylica, alfabet angielski.
Spójrz na to pytanie: [Regex i Unicode] (https://stackoverflow.com/questions/14389/regex-and-unicode) –