将eregi转换为preg_match - 什么是未知修饰符'F'?

时间:2010-08-10 17:38:20

标签: php regex

尝试将以下两个eregi语句转换为其preg对应项:

eregi("/F \(([^)]*)\)",$In,$DataOut);

eregi("/T \(([^)]*)\) /V \(([^)]*)\)",$In,$DataOut);

所以我尝试添加分隔符:

preg_match("//F \(([^)]*)\)/",$In,$DataOut);

不幸的是,这不起作用并产生未知修饰符错误。我可以获得有关这两个表达式的preg版本的帮助吗?

1 个答案:

答案 0 :(得分:0)

是。您不能在正则表达式中使用您选择的字符作为分隔符。使用反斜杠(\):

撤消该字符的任何出现
preg_match("/\/F \(([^)]*)\)/",$In,$DataOut);

您还可以选择任何其他分隔符。如果您使用另一个字符作为分隔符,则不必转义/(因为它不是分隔符):

preg_match("!/F \(([^)]*)\)!",$In,$DataOut);