- Kod: Zaznacz cały
^[\w]:(\\[a-zA-Z 0-9~`!@#$%^()!_-{};',\+\=\[\]]*)*\.[a-zA-Z0-9]*$
Teraz wrzuciłem to do kodu swojego programu i niestety wywala błąd przy wywołaniu:
- Kod: Zaznacz cały
wchar_t* input = Text.w_str();
wregex exrp(L"^[\w]:(\\[a-zA-Z 0-9~`!@#$%^()!_-{};',\+\=\[\]]*)*\.[a-zA-Z0-9]*$");
if(regex_match(input, exrp))
{
//jakiÅ› tam kod
}
Doszedłem do tego, że aplikacja wywala się przez postać wyrażenia, więc testowo zmieniłem je na poniższe:
- Kod: Zaznacz cały
wregex exrp(L"^[\w]:(\\[a-zA-Z 0-9]*)*\.[a-zA-Z0-9]*$");
Według regexpal.com wyrażenie nadal działa (nie uwzględniając ścieżek ze specjalnymi znakami) lecz w aplikacji za każdym razem regex_match zwraca FALSE. No i mam dwa problemy:
1. Dlaczego aplikacja się wywala przy pełnym wyrażeniu jakie chcę podać?
2. Dlaczego wyrażenie za każdym razem zwraca FALSE mimo, że regexpal.com informuje o prawidłowości wyrażenia.