[英]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.