Jak mogę zmienić to w wyrażenie regularne? Zasadniczo wersja oprogramowania aktualizuje się z powodu nowych wydań, a ja chcę mieć sposób na używanie dzikich kart.
Przykład:
Oprogramowanie Pro 0.1.0.123 Umowa licencyjna
Uwagi: To nie działa
Software Pro. * Umowa licencyjna
Dzięki!
Odpowiedzi:
2 dla odpowiedzi № 1To powinno działać dla ciebie.
haystack := "Software Pro 0.1.0.123 License Agreement"
RegExMatch(haystack, "[d.]+", match)
msgbox % match
[d.]+
dopasowuje dowolną kolejną kombinację a number
albo .
postać.
1 dla odpowiedzi nr 2
^Software Pro ([0-9]+.[0-9]+.[0-9]+.[0-9]+) License Agreement$
Krótsza wersja (jeśli d jest obsługiwane dla cyfr):
^Software Pro (d+.d+.d+.d+) License Agreement$
Ogólnie najlepiej jest unikać używania kropki .
dzika karta. Celem jest, aby RegEx był jak najbardziej rygorystyczny i dopasowywał dokładnie to, czego szukasz.
1 dla odpowiedzi nr 3
RegEx, którego możesz szukać, to:
"Software Pro [0-9.]+ License Agreement"
To zadziała, nawet jeśli nie wiesz, ileczęści, których może mieć numer wersji (na przykład, jeśli w przyszłości twórcy zdecydują, że chcą wyświetlać tylko wersję główną i dodatkową, np .: "0.1" zamiast 0.1.0.123), ale wiadomo, że składa się ona tylko z cyfr i kropki.
Jeśli numer wersji może zawierać litery, możesz użyć:
"Software Pro [0-9a-z.]+ License Agreement"
Jeśli próbujesz znaleźć numer wersji i użyj go do czegoś, pamiętaj o zamknięciu go w nawiasach:
"Software Pro ([0-9a-z.]+) License Agreement"
2 dla odpowiedzi № 4
To powinno działać dla ciebie.
haystack := "Software Pro 0.1.0.123 License Agreement"
RegExMatch(haystack, "[d.]+", match)
msgbox % match
[d.]+
dopasowuje dowolną kolejną kombinację a number
albo .
postać.
1 dla odpowiedzi nr 5
^Software Pro ([0-9]+.[0-9]+.[0-9]+.[0-9]+) License Agreement$
Krótsza wersja (jeśli d jest obsługiwane dla cyfr):
^Software Pro (d+.d+.d+.d+) License Agreement$
Ogólnie najlepiej jest unikać używania kropki .
dzika karta. Celem jest, aby RegEx był jak najbardziej rygorystyczny i dopasowywał dokładnie to, czego szukasz.
1 dla odpowiedzi № 6
RegEx, którego możesz szukać, to:
"Software Pro [0-9.]+ License Agreement"
To zadziała, nawet jeśli nie wiesz, ileczęści, których może mieć numer wersji (na przykład, jeśli w przyszłości twórcy zdecydują, że chcą wyświetlać tylko wersję główną i dodatkową, np .: "0.1" zamiast 0.1.0.123), ale wiadomo, że składa się ona tylko z cyfr i kropki.
Jeśli numer wersji może zawierać litery, możesz użyć:
"Software Pro [0-9a-z.]+ License Agreement"
Jeśli próbujesz znaleźć numer wersji i użyj go do czegoś, pamiętaj o zamknięciu go w nawiasach:
"Software Pro ([0-9a-z.]+) License Agreement"