我對正則表達式沒有經驗。我需要一個不允許重複特殊字符的正則表達式(+ - */&等) 該字符串可以包含數字,字母數字和特殊字符。正則表達式 - 如何防止重複的特殊字符?
這應該是有效的:ABC,DF
這應該是無效的:ABC-,DF
,我將非常感激,如果你能幫幫我!感謝您的提前。
我對正則表達式沒有經驗。我需要一個不允許重複特殊字符的正則表達式(+ - */&等) 該字符串可以包含數字,字母數字和特殊字符。正則表達式 - 如何防止重複的特殊字符?
這應該是有效的:ABC,DF
這應該是無效的:ABC-,DF
,我將非常感激,如果你能幫幫我!感謝您的提前。
兩個方案至今匹配字符串,它是不不允許的。
但tilte是如何防止...,所以我認爲正則表達式 應該匹配允許字符串。這意味着,正則表達式應該:
你可以做到這一點放在一起以下幾個部分:
^
- 字符串錨開始,(?!.*[...]{2})
- 連續2個特殊 字符負先行(這裏標記爲...
),在任何地方,$
- 字符串定位結束。所以整個正則表達式應該是:
^(?!.*[[email protected]#$%^&*()\-_+={}[\]|\\;:'",<.>\/?]{2}).+$
注意,一個字符類中(間[
和]
)逃逸以下字符反斜槓 應該-
前放置(如果 中間的順序),結束方括號, 反斜槓本身和/
(正則表達式終止符)。
或者,如果你想在正則表達式適用於單個單詞(不是整個 字符串),那麼正則表達式應該是:
\b(?!\S*[[email protected]#$%^&*()\-_+={}[\]|\\;:'",<.>\/?]{2})\S+
它工作的很棒,你救了我的一天。真的很感激,謝謝! – asyaben
[\,\+\-\*\/\&]{2,}
如果需要,可在方括號中添加更多字符。
演示https://regex101.com/r/CBrldL/2
使用以下正則表達式來匹配無效字符串。提出
[^A-Za-z0-9]{2,}
還有什麼你認爲一個特殊字符? '-'和','對我來說同樣是'特殊的' – Brandon