-3

我想检查一个变量是否只包含字母字符和撇号 (') 以及破折号 (-) 和空格 () 字符。我如何preg_match()在 PHP 中做到这一点?

我有 /[^a-zA-Z'-\s]/i 并且没有撇号就解决了。

4

2 回答 2

1

尝试/^[a-zA-Z'\-\s]*$/作为您的正则表达式字符串。请注意,此正则表达式也将匹配空白字符串。

于 2012-07-12T20:32:25.540 回答
0
preg_match('/^[\s\pL'-]+$/',$string)

这是我会做的方式

//编辑

也许如果您的字母数量最少,请使用:

preg_match("/^[\s\pL'-]{5,}$/",$string) //{x,} ---> x is your min number
于 2012-07-12T20:44:36.517 回答