首頁 >web前端 >js教程 >如何限制正規表示式中的字元長度?

如何限制正規表示式中的字元長度?

Barbara Streisand
Barbara Streisand原創
2024-11-20 03:17:02944瀏覽

How to Restrict Character Length in a Regular Expression?

限制正規表示式中的字元長度

使用正規表示式符合字串中的特定模式時,通常需要限製字元長度以確保精確匹配。在提供的範例中:

var test =  /^(a-z|A-Z|0-9)*[^$%^&*;:,<>()?""']*$/

此正規表示式匹配由字母或數字組成的任何字串,沒有任何字元長度限制。嘗試使用 [^$%^&*;:,()?""']*${1,15} 將字元長度限制為 15 會導致錯誤。

要解決此問題並強制執行字符限制,請使用錨定在字符串開頭的前瞻:

^(?=.{1,15}$)...

此前瞻檢查字符串是否匹配1 到15字符,但不包括末尾的換行符(由於$)。它限制整個輸入字串的長度。

在末尾使用量詞,例如[^$%^&*;:,()?""']{1,15 },只會限制第二個字元類別的長度,而不是整個字串。

對於可能包含換行符序列的字串,使用 [sS] 匹配任何字元:

^(?=.[\s\S]{1,15}$)...

這確保字元長度限制適用於整個字串,無論換行符如何。

以上是如何限制正規表示式中的字元長度?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn