【发布时间】:2013-02-21 22:48:50
【问题描述】:
我知道对此有很多问题,但我没有发现任何与我的问题相符的内容。我想将此表达式转换为 preg_replace:
$a = ereg_replace('[-a-z0-9!#$%&\'*+/=?^_`{|}~]+@([.]?[a-zA-Z0-9_/-])*','', $a);
到目前为止尝试了这些但没有奏效:
$a = ereg_replace('/[-a-z0-9!#$%&\'*+/=?^_`{|}~]+@([.]?[a-zA-Z0-9_/-])*/','', $a);
$a = ereg_replace('|[-a-z0-9!#$%&\'*+/=?^_`{|}~]+@([.]?[a-zA-Z0-9_/-])*|','', $a);
这是第二行的错误信息:
Warning: preg_replace(): Unknown modifier '}' in
【问题讨论】:
-
尝试
preg_quoteing 你的角色类中的东西。 -
在第二个中,您在模式内使用分隔符而不引用它(就在
}之前) -
转义分隔符。或使用字符列表中未出现的分隔符,例如
°。如果一切都失败了,preg_match("\001[....]\001"总是一个替代方案。