【发布时间】:2014-07-19 17:08:23
【问题描述】:
我已经尝试在代码中包含 - 但我总是遇到问题
在
中包含这个字符“-”的正确方法是什么?!preg_match("/^[a-zA-Z0-9\. ]*$/", $home)
谢谢
【问题讨论】:
-
您需要将其转义 (
\-),或将其设为[]中的第一个字符。 -
@meagar: C#??不同语言支持的正则表达式语法存在一些差异(即使在这种情况下它是相同的),所以我认为你不应该这样做。
-
@meagar:我知道没有任何正则表达式方言会具有转义您所描述的语法。
[a\-z]匹配所有小写字符。 -
@justsomebody
[-a-z]和[a-z-]都匹配-和a-z。除非它是模棱两可的,否则你不必逃避它。 -
@meagar 是的,如果你把它放在第一位或最后,你可以让它在一个字符类中代表自己。但是如果它不在这些位置,您可以在破折号前面放置任何反斜杠以使其非特殊。 你需要转义它 (\-) 是错误的。
标签: php