测试一个单词是由字母字符,空格和句点组成的?

时间:2014-09-26 08:34:10

标签: php regex

我需要一个正则表达式来测试一个单词是由字母(字母字符),空格和句点(。)组成的。我需要这个来验证在我的数据库中输入的名称。

这是我目前使用的:

preg_match('/^[\pL\s]+$/u',$foo)

它适用于检查字母字符和空格,但也拒绝带有句点的名称。我希望你们能帮忙,因为我不知道如何使用正则表达式。

3 个答案:

答案 0 :(得分:2)

以下正则表达式应满足您的条件:

preg_match('/^[a-zA-Z\s.]+$/',$foo)

答案 1 :(得分:2)

在字符类中添加一个点,使其与文字点匹配。

preg_match('/^[\p{L}.\s]+$/u',$foo)

OR

preg_match('/^[\pL.\s]+$/u',$foo)

<强>解释

  • ^断言我们刚开始。
  • [\pL.\s]+匹配列表中的任何字符一次或多次。 \pL匹配来自任何语言的任何类型的字母。
  • $断言我们结束了。

答案 2 :(得分:2)

在此链接中,您将找到使用PHP计算正则表达式所需的所有信息。 PHP Regex Cheat Sheet

基本上,如果您想添加添加的时间段。 :

preg_match('/^[\pL\s\.]+$/u',$foo)

享受! :)