@Wyrewolwerowanyrewolwer: sam kiedyś miałem podobny problem, generalnie chodzi o to że czasem jak wpiszesz z łapy 4 backslashe (np jako argument), to najpierw kompilator escapuje 2 razy po 2 backlashe, a potem parser regexpa te już wyescapowane 2 backslashe escapuje do jednego ostatecznego. Wiem że nie umiem tłumaczyć i nie wiem czy dobrze mówię, ale to tak w skrócie ( ͡° ͜ʖ ͡°)
  • Odpowiedz
@Wyrewolwerowanyrewolwer: Rzecz jest w zasadzie prosta i znana we wszystkich jezykach. Masz tutaj dwa poziomy escapowania. Najpierw jest escapowanie stringow normalnie w jezyku programowania. Stad dziala np. "\n" jako nowa linia, a "\" zostawia w efekcie pojedynczy "\".

Drugi poziom to regex, w ktorym niestety tez "\" sluzy do escapowania. W efekcie jest tak jak napisal @hamster151:

"\" -> javac -> "\" -> regex -> "\"


W wielu
  • Odpowiedz
([A-Za-z]+).


@kujaw: masz tutaj: http://regexper.com/#(%5BA-Za-z%5D%2B).

I teraz - wiem, że [A-Za-z] to jest przedział liter, zmienna musi zaczynać się dowolną dużą literą z przedziału a-z, kolejna litera jest małą literą z tego samego przedziału. + to każdy kolejny znak po znakach z przedziaułu [ ]. \ olewa znaki, które nie są liczbami, ani literami. A ostatnia . kropka to po prostu kropka.


Ty opisujesz mniej więcej [coś takiego](http://regexper.com/#(%5BA-Z%5D%2B%5Ba-z%5D%2B)%5C.)
  • Odpowiedz