【发布时间】:2016-07-09 13:05:04
【问题描述】:
我有这个很好的 preg_match 正则表达式:
if(preg_match ("%^[A-Za-z0-9ążśźęćńółĄŻŚŹĘĆŃÓŁ\.\,\-\?\!\(\)\"\ \/\t\/\n]{2,50}$%", stripslashes(trim($_POST['x']))){...}
这应该允许所有可以在帖子中使用的字符和最终的文本内容。问题是,尽管 \n 它的功能仍然不适用于我帖子中的新行,所以语法为
富
酒吧
行不通。 有人知道为什么该功能无法正常工作吗?
任何帮助将不胜感激。
【问题讨论】:
-
您是否尝试过使用 /m 标志?
-
m 标志有效。克拉尔是第一个
-
@aln447:不,它不起作用,如果你使用 m 修饰符,如果你的字符串中只有一行匹配模式,preg_match 将成功(尝试使用允许字符的第一行和第二行带有禁止字符)。您的问题可能是您的字符串使用了 Windows 换行符序列
\r\n(CRLF),并且由于\r不在您的字符类中,因此它不起作用。