如何通过文件替换引号内的内容

时间:2018-04-18 17:01:51

标签: fopen fwrite fclose

为什么我不能使用str_replace()替换""?之间的内容?当我替换文件中的链接时,它们会被跳过,因为它们在引号内。

实施例。

href="/path/to/file/is/here" 

应该是

href="/New/Path/To/File/Goes/Here"

如果路径/网址不在引号中,str_replace()将起作用。

2 个答案:

答案 0 :(得分:0)

我假设这是PHP。所以,从这里的例子来看:

http://php.net/manual/en/function.str-replace.php

您可以看到不应该插入相同类型的引号。 因此,请尝试将代码中的引号更改为单引号,或者将html中的双引号更改为单引号。

如果不是这样,我希望至少该文档参考可以帮助您。

答案 1 :(得分:0)

这可能有助于我通常在java中编码,但php非常相似。下次输入部分代码,以便社区可以看到您的逻辑。

在第67行的if语句中,第3个变量$ stringToSearch应该是正则表达式而不是你指定给它的字符串。正如您所知,正则表达式的目的是替换您已经知道的代码中不需要的字符

你有什么不起作用:

Console.log("OK")

我在想它应该是:

// replacing string from files
          //$stringToSearch = str_replace('"', "!!", $stringToSearch);
          $stringToSearch = str_replace($toBeReplaced, $toBeReplacedWith, $stringToSearch);
          //$stringToSearch = str_replace("!!", '"', $stringToSearch);

如果其他人有任何建议,我将不胜感激,因为我不用PHP编码。