【发布时间】:2014-01-13 01:29:22
【问题描述】:
基本上我想在句子中替换某些单词(例如单词“tree”与单词“pizza”)。限制:当需要替换的单词在双引号之间时,不应该进行替换。
例子:
The tree is green. -> REPLACE tree WITH pizza
"The" tree is "green". -> REPLACE tree WITH pizza
"The tree" is green. -> DONT REPLACE
"The tree is" green. -> DONT REPLACE
The ""tree is green. -> REPLACE tree WITH pizza
可以用正则表达式做到这一点吗?我会计算单词前双引号的数量并检查它是奇数还是偶数。但这可能在 php 中使用 preg_replace 吗?
谢谢!
//编辑:
目前我的代码如下所示:
preg_replace("/tree/", "pizza", $sentence)
但这里的问题是用双引号实现逻辑。我试过这样的事情:
preg_replace("/[^"]tree/", "pizza", $sentence)
但这不起作用,因为它只检查双引号是否在单词前面。但是上面有一些例子,这个检查失败了。 导入是我只想用正则表达式解决这个问题。
【问题讨论】:
-
这被标记为 php,但您没有显示任何支持它是 php 的内容,您能否显示您尝试过的代码并显示您尝试在 php 中预替换的字符串。我们不是来为你编码的,所以请帮助我们。
-
请看我的更新。
标签: php regex preg-replace