burner 2015-03-25 03:23 采纳率: 77.8%
浏览 2330
已采纳

请问下面代码中正则表达式“/./us”怎么解释?

<?php
if(!empty($_POST['text'])){
$str = $_POST['text'];
preg_match_all("/./us", $str, $match);
$num = count($match[0]);
print_r($match);
if($num <= 6) {
echo "alert(&#39;输入内容的长度小于6&#39;);";
}else{
echo "alert(&#39;发布成功&#39;);";
}
}
?>

  • 写回答

1条回答 默认 最新

  • q107770540 2015-04-01 05:55
    关注

    u(PCRE_UTF8)
    此修正符启用了一个 PCRE 中与 Perl 不兼容的额外功能。模式字符串被当成 UTF-8。本修正符在 Unix 下自 PHP 4.1.0 起可用,在 win32 下自 PHP 4.2.3 起可用。自 PHP 4.3.5 起开始检查模式的 UTF-8 合法性。

    s (PCRE_DOTALL)
    如果设置了这个修饰符,模式中的点号元字符匹配所有字符,包含换行符。如果没有这个 修饰符,点号不匹配换行符。这个修饰符等同于 perl 中的/s修饰符。 一个取反字符类比如 [^a] 总是匹配换行符,而不依赖于这个修饰符的设置。

    代码意思就是要匹配6个以上字符才算符合要求,用这样即可: "/^.{6,}$/m"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog