如何加入两个正则表达式?

时间:2016-05-05 14:51:18

标签: php regex

我有这两个正则表达式

/^[^+\x2f\s\x5c ]+$/ - don't accept slashes, + or white spaces

/(?!^\d+$)^.+$/ - Don't be only numbers

我想加入其中一个。我怎么加入他们?

3 个答案:

答案 0 :(得分:2)

您可以将它们加入:

^(?!^\d+$)[^+\x2f\s\x5c ]+$

RegEx Demo

答案 1 :(得分:2)

/^(?!^\d+$)[^+\x2f\s\x5c ]+$/

否定前瞻,然后是匹配。

答案 2 :(得分:1)

我个人会在正则表达式上找到这样的东西,因为它更具可读性:

if (
    !ctype_digit($string) &&
    strpos($string, '\\') === FALSE &&
    strpos($string, '/') === FALSE &&
    strpos($string, '+') === FALSE &&
    !preg_match('white spaces regex goes here', $string)
) {
    // Good to go
}
else {
    // Error
}