[英]regular expression to limit 300 words
我需要一個正則表達式,成功0-300字,失敗301或更多的話。
我試過了:
^\s*(\S+\s+){0,300}\S*$
我也檢查過
^\W*(?:\w+\b\W*){0,300}$
兩者都工作正常但在Java中我得到一個java.lang.StackOverflowError 。 我知道使用更大的“XSS”我解決了這個問題,但我想問一下是否有辦法優化正則表達式?
您可以使用String.split
並檢查返回的數組的大小。
如果第300th
單詞是最后一個單詞並且前面沒有space
,那么你的正則表達式將失敗。你應該使用
^ *(?:\S+(?: +|$)){0,300} *$
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.