Php 如何使用正则表达式匹配不包含点(.)的字符串?

Php 如何使用正则表达式匹配不包含点(.)的字符串?,php,string,nginx,Php,String,Nginx,如何匹配不包含点的字符串。使用正则表达式?为什么使用正则表达式 $str="string_with_no_dots"; if ( strpos ($str,"." ) === FALSE ){ print "ok, no dots\n"; } 为什么是正则表达式 $str="string_with_no_dots"; if ( strpos ($str,"." ) === FALSE ){ print "ok, no dots\n"; } 创建一个与除指定之外的任何内容相匹配的类,这

如何匹配不包含点的字符串。使用正则表达式?

为什么使用正则表达式

$str="string_with_no_dots";
if (  strpos ($str,"." ) === FALSE ){
 print "ok, no dots\n";
}
为什么是正则表达式

$str="string_with_no_dots";
if (  strpos ($str,"." ) === FALSE ){
 print "ok, no dots\n";
}

创建一个与除指定之外的任何内容相匹配的类,这是使用[]和^operator完成的。并且,正如注释所说,您希望将其与开头^和结尾$或字符串匹配,以便我们检查整个字符串

^[^.]*$

创建一个与除指定之外的任何内容相匹配的类,这是使用[]和^operator完成的。并且,正如注释所说,您希望将其与开头^和结尾$或字符串匹配,以便我们检查整个字符串

^[^.]*$

使用此正则表达式:

如果!预匹配“/\。/”,$str,$val

{

打印正常,没有点\n


}使用此正则表达式:

如果!预匹配“/\。/”,$str,$val

{

打印正常,没有点\n


}

自从。在类中没有特殊意义您不需要\ there。您可能需要^[^.]*$以避免部分匹配。@科林·纽厄尔:是的,否则这将匹配第一个不是字符的字符。我使用了Kobi的解决方案,美元符号在那里非常重要:因为。在类中没有特殊意义您不需要\ there。您可能需要^[^.]*$以避免部分匹配。@科林·纽厄尔:是的,否则这将匹配第一个不是字符的字符。我使用了Kobi的解决方案,美元符号在这里非常重要:如果这是用于url重写,则应删除php标记并添加ModRewrite标记。如果这是用于url重写,则应删除php标记并添加ModRewrite标记。