2016-12-21 53 views
1

請參閱我的正則表達式:正則表達式 - 不允許空間開頭

^(?!.* )[^#+&\'\"\\\\]*$ 

我想restrcit用戶在開始進入空間,例如:
(空格)123 --->無效

我應該如何將它添加到上面的正則表達式?
有人可以幫助我嗎?

+0

最終的正則表達式模式匹配一​​個空字符串'「」'? – RomanPerekhrest

回答

1

你可以加一個替代前瞻:

^(?! |.* )[^#+&\'\"\\\\]*$ 
^^^^^^^^^^ 

看是否有空間正好出現在字符串的開始,或者有在regex demo

(?! |.* )負向前查找失敗的比賽在任何0+字符之後的某個位置有兩個連續的空格(取決於DOTALL選項或正則表達式,除換行符之外的任何字符)。

相同的模式可以寫在更線性的方式,因爲

^(?!(?:.*)?)[^#+&\'\"\\\\]*$ 
+1

Wiktor,你解決了我的問題。 –

1

到restrcit用戶使用字符類[^\s]+?開頭

甚至更​​簡單的進入空間,只允許字符串開頭的非空格字符:

^[^\s]+?[^#+&\'\"\\\\]*$

+0

該表達式不再匹配空字符串。 OP表達式。 –

+0

@WiktorStribiżew,我會問 – RomanPerekhrest