Ruby/Wyrażenia regularne: Różnice pomiędzy wersjami
Usunięta treść Dodana treść
Szymon wro (dyskusja | edycje) |
Szymon wro (dyskusja | edycje) |
||
Linia 46:
Wspólny termin określający wzory które używają tego dziwnych symboli to wyrażenia regularne. W Rubim tak samo jak w Perlu są one zazwyczaj otoczone raczej przez ukośniki niż przez cudzysłowy. Jeżeli nigdy wcześniej nie pracowałeś z wyrażeniami regularnymi, prawdopodobnie wyglądają jak wszystko inne ale nie jak coś regularnego, nie mniej powinieneś być sprytny i poświęcić trochę czasu by się z nimi zaznajomić. Wyrażenia regularne mają skutecznie ekspresywną moc, która oszczędzi ci bólów głowy (i wielu linii kodu) niezależnie od tego, czy potrzebujesz dopasowywania wzorców, wyszukiwania czy też innego manipulowania łańcuchami.
Dla przykładu, przypuśćmy, że chcemy sprawdzić czy łańcuch pasuje do tego opisu: "Zaczyna się małą literą ''f'', po której zaraz następuje jedna duża litera i opcjonalnie jakieś inne znaki, aż do wystąpienia innych innych małych liter." Jeżeli jesteś doświadczonym programistą C, prawdopodobnie już napisałeś około tuzina linii kodu w głowie, prawda? Przyznaj to; prawie nie możesz sobie poradzić. Ale w Rubim potrzebujesz jedynie by
A co z "Zawiera
<pre>
Linia 65:
</pre>
Chociaż wyrażenia regularne mogą
Oto mały program który pomoże ci eksperymentować z wyrażeniami regularnymi. Zapisz go jako ''regx.rb'' i uruchom przez wpisanie "ruby regx.rb" w linii poleceń.
Linia 109:
Jeśli cię to zaskoczyło, sprawdź w tabeli na górze tej strony: '''\d''' nie ma żadnego związku ze znakiem ''d'', a oznacza pojedynczą cyfrę.
A co, jeśli jest więcej niż jeden sposób
<pre>
Linia 118:
</pre>
'''foozbooz''' jest spasowany zamiast
Oto wzór do wyizolowania pola zawierającego godzinę z separatorem w postaci dwukropka.
|