Belirli bir normal ifadeyle biraz şaşırıyorum.Simple Regex, en az bir tire ile herhangi bir dizgi eşleştirin
Bu eşleme, yalnızca a-z, A-Z, 0-9 olan bir dize olmalı ve dizede herhangi bir yerde en az bir '-' karakterinin olması gerekir.
[a-zA-Z0-9-]+
var ama sorun şu ki, '-' karakteri olmayanlarla da eşleşecektir.
ABC123-ABC //should match
ABC123ABC //shouldn't match.
Teşekkürler, bir şey yap n sayıda tire gerektiriyorsa, gerçekten uzun soluklu olsun? – maxp
Sadece FYI: bu gönderide sağlanan ilk regex ('^ [a-zA-Z0-9] * - [a-zA-Z0-9] * $') _exactly_ one tire ile eşleşir; kısa çizgi (orjinal mesajınızda belirtildiği gibi), diğer örneklere benzer şekilde sarmalı ve ** + **: '^ ([a-zA-Z0-9] * - [a-zA-Z0-9] * eklemelisiniz.) + $ ' –
Bu, yalnızca - olan bir dizeyle eşleşecektir. Her zaman alfanumlar arasına sarılmaya ihtiyaç duyulursa, ([a-zA-Z0-9] + - [a-zA-Z0 -9] +) Denedim ama doğru uyuşmuyor. Bir kez dize parçası ikinci kez düşünülmez mi? Üzgünüm ben regex ve karışık yeni. –