繁体   English   中英

如何在正则表达式中允许使用“-”?

[英]How do you allow '-' in regular expression?

我试图在电话号码的正则表达式中允许使用“-”,但是“-”通常用于范围(例如AZ)。 那么我如何只允许角色呢? 我尝试使用/-转义,但这不起作用。

$reg_num = "/[^0-9+ ()]/"; 

您需要使用反斜杠\\对其进行转义。 因此应将其写为\\-

最后写上它,而不是在两个字符之间写“-”。 非常简化的示例: [0-9-] 099-2233-3333 [0-9-]将匹配099-2233-3333 ,其中0-9是范围,最后的-是要匹配的单独破折号。

将其放在范围内的第一位,例如[^-0-9+ ()] 连字符需要分隔两个字符以定义范围。 如果不是(在这种情况下,因为^也被解释为修饰符,而不是集合中的字符),那么它就像集合中的其他字符一样只是集合中的字符。

使用\\-转义

\

是逃脱角色!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM