使用前瞻來控制正規表示式中的字串長度
在嘗試限製字串長度時,錨點內的正規表示式量詞通常會導致錯誤。 解決方案是什麼? 前瞻!以下是如何有效實作字元長度限制:
<code>^(?=.{1,15}$)[a-zA-Z0-9]*[^$%^&*;:,?()""']*$</code>
為何前瞻性至關重要
量詞與錨點不相容。 前瞻提供了一種解決方法。 前瞻 (?=.{1,15}$)
緊接在字串開頭錨點 (^
) 之後,使用量詞 ({1,15}
) 檢查 1 到 15 個字符,後跟字串結尾錨點 ($
)。這可確保整個字串滿足長度限制。
處理多行字串
對於有換行符號的字串,請在前瞻中使用 [sS]
建構:
<code>^(?=[\s\S]{1,15}$)[a-zA-Z0-9]*[^$%^&*;:,?()""']*$</code>
這個修改後的表達式可以準確處理包含換行符的字串。 透過使用前瞻,您可以可靠地在正規表示式中強制執行長度限制,確保整個輸入字串符合您指定的要求。
以上是如何使用前瞻在正規表示式中強制執行字元長度限制?的詳細內容。更多資訊請關注PHP中文網其他相關文章!