我有一个字符串,我需要看看它是否包含以下"_archived".
我使用以下内容:
preg_match('(.*)_archived$',$string);
Run Code Online (Sandbox Code Playgroud)
但得到:
Warning: preg_match() [function.preg-match]: Unknown modifier '_' in /home/storrec/classes/class.main.php on line 70
Run Code Online (Sandbox Code Playgroud)
我是正则表达式的新手,所以这可能很容易.
或者我应该使用更简单的东西
strstr($string, "_archived");
Run Code Online (Sandbox Code Playgroud)
提前致谢
strstr($ string,"_ archived");
对于你描述的问题会更容易.
正如经常引用的那样
有些人在面对问题时会想"我知道,我会使用正则表达式".现在他们有两个问题. - 杰米·扎温斯基
在这种情况下,strstr就足够了,但要解决您的问题,您需要在正则表达式中添加分隔符.分隔符是一个特殊字符,用于启动和结束正则表达式,如下所示:
preg_match('/_archived/',$string);
Run Code Online (Sandbox Code Playgroud)
分隔符可以是许多不同的字符,但通常的选择是/,#和!.从PHP手册:
任何字符都可以用于分隔符,只要它不是字母数字,反斜杠()或空字节.如果必须在表达式本身中使用分隔符,则需要使用反斜杠进行转义.从PHP 4.0.4开始,您还可以使用Perl-style(),{},[]和<>匹配分隔符.
阅读所有关于PHP正则表达式语法在这里.
您可以在此处查看PHP手册中有效(和无效)模式的一些示例.
| 归档时间: |
|
| 查看次数: |
931 次 |
| 最近记录: |