![](/img/trans.png)
[英]PHP Regex: Detect multiple periods, underscores, etc. in email address
[英]PHP regex periods
如何将句点放入PHP正则表达式?
它在代码中的使用方式是:
echo(preg_match("/\$\d{1,}\./", '$645.', $matches));
但显然这段时间在$645.
没有得到认可。 请求有关如何使其工作的提示。
自从.
是一个特殊的角色,你需要逃避它才能真正拥有它,所以\\.
。
如果要在字符串中使用它,请记住也要转义转义字符。 因此,如果要在字符串声明中编写正则表达式foo\\.bar
,则需要将其设置为"foo\\\\.bar"
。
逃避它 。 句点在正则表达式中具有特殊含义,因为它表示任何字符 - 它是通配符。 表示和匹配文字.
它需要通过反斜杠\\
来进行转义,即\\.
/[0-9]\.[ab]/
匹配数字,句点和“a”或“ab”,而
/[0-9].[ab]/
匹配数字,任何单个字符1和“a”或“ab”。
请注意,PHP也使用反斜杠作为双引号字符串中的转义字符。 在这些情况下,你需要双倍逃避:
$single = '\.';
$double = "\\.";
UPDATE
这个echo(preg_match("/\\$\\d{1,}./", '$645.', $matches));
可以重写为echo(preg_match('/\\$\\d{1,}\\./', '$645.', $matches));
或echo(preg_match("/\\\\$\\\\d{1,}\\\\./", '$645.', $matches));
。 他们都 工作 。
1)不是换行符,除非通过s
修饰符配置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.