繁体   English   中英

允许在文本区域中使用正则表达式返回行

[英]Allow returnline in textarea with regular expression

我想在Form 文本区域中允许使用换行符 我还没有找到将这种可能性添加到正则表达式中的方法 返回行将存储在数据库中吗?

这是HTML表单:

<form method="post" action="#">
    <textarea name="description" spellcheck="true" maxlength="500"></textarea> 
</form> 

以及带有正则表达式的PHP代码来调节textarea输入( true =匹配regex =存储到数据库):

if (!preg_match("/^[a-zàâäèéêëîïôœùûüÿç0-9 !?’',.-]+$/i", $POST['description'] )) {
    return false;
}
    return true;
}

您可以通过添加\\n\\r来匹配新行(和回车符):

/^[a-zàâäèéêëîïôœùûüÿç0-9 \n\r!?’',.-]+$/i

但是也许您想允许所有类型的空格(例如制表符,不间断空格等)。 然后,您可以更好地使用\\s

/^[a-zàâäèéêëîïôœùûüÿç0-9\s!?’',.-]+$/i

列出所有允许的字母可能很困难。 总是会有另一个字符……像ò 如果您愿意使用某种可以用某种语言或字母(甚至是希腊语,西里尔字母)组成的字母,则可以使用\\pL转义\\pLunicode修饰符u结合使用。

请注意,您也可以使用\\d来匹配数字:

/^[\pL\d\s!?’',.-]+$/iu

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM