Szukam wyrażenia regularnego, które będązaakceptuj następujące elementy: Wielka litera A, po której następuje dowolna liczba cyfr. Może to być również liczba dziesiętna. Wszystkie są ważne: A1, A500, A543.987
To NIE jest OK, aby zaakceptować: Apple, AE100
Obecnie mam [A]w.[0-9]*
ale akceptuje App
i AE100
.
Odpowiedzi:
4 dla odpowiedzi № 1Sugerowałbym „Ad + (. D +)?”. d oznacza wszystkie cyfry, + to jeden lub więcej znaków, a (.d +)? jest . po którym następuje jedna lub więcej cyfr. Ale ? określa, że jest to opcjonalne.
6 dla odpowiedzi nr 2
Możesz użyć następującego wyrażenia regularnego, jeśli cały ciąg powinien pasować:
^A[0-9]+(?:.[0-9]+)?$
Lub, aby dopasować te ciągi jako całe słowa:
bA[0-9]+(?:.[0-9]+)?b
Zobacz regex demo.
Detale
^
- początek ciągu /b
- granica słowaA
- anA
[0-9]+
- Ponad 1 cyfra(?:.[0-9]+)?
- opcjonalna sekwencja.
a następnie 1+ cyfry$
- koniec łańcucha /b
- granica słowa.