Php 正则表达式匹配至少有n个单词的句子

Php 正则表达式匹配至少有n个单词的句子,php,regex,utf-8,Php,Regex,Utf 8,我试图从一个文本中提取所有句子,比如说,至少由5个PHP单词组成。假设句子以句号、问号或感叹号结尾,我得出以下结论: /[\w]{5,*}[\.|\?|\!]/ 有什么想法吗,怎么了 另外,要使用UTF-8,需要做些什么?\w只匹配一个字符。一个单词应该是\w+。如果你至少需要5个单词,你可以这样做: /(\w+\s){4,}\w+[.?!]/ i、 e.至少有4个单词后跟空格,另一个单词后跟句子分隔符。\w仅与单个字符匹配。一个单词应该是\w+。如果你至少需要5个单词,你可以这样做:

我试图从一个文本中提取所有句子,比如说,至少由5个PHP单词组成。假设句子以句号、问号或感叹号结尾,我得出以下结论:

 /[\w]{5,*}[\.|\?|\!]/ 
有什么想法吗,怎么了


另外,要使用UTF-8,需要做些什么?

\w
只匹配一个字符。一个单词应该是
\w+
。如果你至少需要5个单词,你可以这样做:

/(\w+\s){4,}\w+[.?!]/

i、 e.至少有4个单词后跟空格,另一个单词后跟句子分隔符。

\w
仅与单个字符匹配。一个单词应该是
\w+
。如果你至少需要5个单词,你可以这样做:

/(\w+\s){4,}\w+[.?!]/

i、 e.至少有4个单词后跟空格,另一个单词后跟一个句子分隔符。

我同意这里发布的解决方案。如果您在PHP中使用preg函数,那么可以添加“u”模式修饰符,以便与UTF-8一起使用
/(\w+\s){4,}\w+[.?!]/u
例如,我同意这里发布的解决方案。如果您在PHP中使用preg函数,那么可以添加“u”模式修饰符,以便与UTF-8一起使用
/(\w+\s){4,}\w+[.?!]/u
例如,不带正则表达式的方法:

$str = "this is a more than five word sentence. But this is not. Neither this. NO";

$sentences = explode(".", $str);
foreach($sentences as $s)
{
   $words = explode(' ', $s);
   if(count(array_filter($words, 'is_notempty')) > 5)
       echo "Found matching sentence : $s" . "<br/>";
}

function is_notempty($x)
{
 return !empty($x);
}
$str=“这是一个五个字以上的句子。但这不是。这也不是。不”;
$SECTURES=爆炸(“.”,$str);
foreach($s)
{
$words=爆炸(“”,$s);
if(计数(数组过滤器($words,'is\u notempty'))>5)
echo“找到匹配的句子:$s”。
; } 函数为空($x) { 返回!空($x); }
这将产生:

找到匹配的句子:这是一个超过五个单词的句子


无正则表达式方法:

$str = "this is a more than five word sentence. But this is not. Neither this. NO";

$sentences = explode(".", $str);
foreach($sentences as $s)
{
   $words = explode(' ', $s);
   if(count(array_filter($words, 'is_notempty')) > 5)
       echo "Found matching sentence : $s" . "<br/>";
}

function is_notempty($x)
{
 return !empty($x);
}
$str=“这是一个五个字以上的句子。但这不是。这也不是。不”;
$SECTURES=爆炸(“.”,$str);
foreach($s)
{
$words=爆炸(“”,$s);
if(计数(数组过滤器($words,'is\u notempty'))>5)
echo“找到匹配的句子:$s”。
; } 函数为空($x) { 返回!空($x); }
这将产生:

找到匹配的句子:这是一个超过五个单词的句子

“有什么想法吗,怎么了?”到底发生了什么?错误?没有做你期望它做的事?“有什么想法,怎么了?”实际发生了什么?错误?没有做你期望它做的事情吗?请注意,你只能用一个分隔符“爆炸”。OP说句子可以以任何
结尾。请注意,只能使用单个分隔符“分解”。OP说句子可以以任何
结尾