正则表达式 - preg_replace php - 理解

时间:2013-04-18 12:37:17

标签: php regex preg-replace expression

我有以下代码,我正在尝试理解这段代码究竟是做什么的,但经过几次我没想到......

OBS:  这段代码是很久以前制作的,它正在努力处理来自用户的一些输入,例如城市,州等。

preg_replace('/\A[\w\.\-\+]+\z/', '', $anyString)

我已经知道的事情:

\A =在输入的开头匹配

\w =匹配任何字词

\. , \- , \+ =匹配角色。 ,和+

\z =匹配字符串的结尾

任何帮助将不胜感激, 感谢

1 个答案:

答案 0 :(得分:5)

\A     - start at the beginning
  [    - match any of the following:
    \w   - a word character (a-z, A-Z, 0-9, underscore)
    \.   - a dot
    \-   - a dash
    \+   - a plus
  ]
  +     - at least one time, but possibly more.
\z     - end at the end

因此,从开始到结束,整个字符串必须由字母,数字,下划线,点,短划线或加号组成,并且必须至少有一个字符长。

如果是,请用空字符串替换它(我很好奇为什么这很有用)。