RegEx per consentire tutti i caratteri, la lunghezza deve essere compresa tra 1 e 50 caratteri

RegEx per consentire tutti i caratteri, la lunghezza deve essere compresa tra 1 e 50 caratteri

Prova ^.{1,50}$

Spiegazione:

  • . punto sta per tutti i caratteri. Tranne \n per cui dovrai usare s Bandiera DOTALL.

Demo Regex101

Opzioni di espressione regolare


Per la Lunghezza Esatta della stringa che potresti usare

^.{50}$

Considerando che per controllare il intervallo di lunghezza puoi usare

^.{5,50}$

Potrebbe essere più sensato per utenti reali se includessi anche un limite inferiore al numero di lettere

Se desideri semplicemente controllare la Lunghezza minima puoi usare

^.{50,}$

Ora una stringa di almeno cinquanta lettere, ma che si estende a qualsiasi lunghezza,

^.{0,50}$

Questo corrisponderà a un'intera stringa contenente tra 0 e 50 (inclusi) di qualsiasi carattere. Sebbene le espressioni regolari siano probabilmente lo strumento sbagliato per questo lavoro. Regex è eccessivo , controlla solo la lunghezza della stringa. Avresti dovuto usare String.Length per questo come

if(UrString.Length > 0 && UrString.Length <= 50)

Che ne dici di ispezionare il Length della stringa?

string str = "less than 50 chars";
if(str.Length > 0 && str.Length <= 50)
{
    // yay, we've got a winner
}