[英]Regular expression for length only - any characters
我正在嘗試將 textarea 的內容正則表達式為 4 到 138 個字符。
我的正則表達式是這樣的: '/^.{4,138}$/'
但是 - 我希望用戶能夠包含返回字符,我相信“。” 阻止他們這樣做。 關於我需要改變什么的想法?
編輯:
顯然還有其他方法可以獲取文本的長度 - strlen
...等,但由於檢查的性質,我正在尋找正則表達式(即需要正則表達式的插件)
我希望用戶能夠包含返回字符,我相信“。” 阻止他們這樣做。 關於我需要改變什么的想法?
任何一個:
.
到[\s\S]
(空格/換行符是\s
的一部分,所有 rest 都是\S
的一部分)/…/s
為什么不使用strlen
檢查字符串長度? 這將比做一個正則表達式更有效。 另外,您可以提供有意義的錯誤消息。
$length = strlen($input);
if ($length > 138)
print 'string too long';
else if ($length < 4)
print 'string too short';
任何一個
/^.{4,138}$/s
或者
/^[\s\S]{4,138}$/
將匹配換行符。
s
標志告訴引擎將整個事物視為一行,因此.
將匹配\n
除了它通常匹配的內容。 請注意,這也會導致^
和$
在整個字符串的開頭和結尾匹配(而不僅僅是每行的開頭/結尾),除非您還使用m
標志。
嘗試'/^.{%d,%d}$/s'
來擁有.
也匹配換行符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.