我想遍历一个像这样的字符串。
Booo ahh [Hello] and what is [Baby] at your [Mouse]
我的目标是将每个[@@@]
用另一个字符串替换,该字符串不是静态的,但可以处理方括号之间的内容。
应该像
function replace_string($text) {
...
//Maybe some kind of loop for all brackets
{
$content = ... //For example Hello, Baby, Mouse => @@@
$replacement = "I'm a " . $content . "!";
...
}
return $replacedString;
}
我认为它不能像我的“建议”那样起作用,但是我希望我能展示我想做的事情,并且有人可以帮助我。
答案 0 :(得分:0)
据我了解,您希望在此字符串的末尾:
Booo啊[我是你好!]和[I'm Mouse!]上的[I'm Baby!]
是什么?
因此您可以使用preg_replace函数:http://php.net/manual/en/function.preg-replace.php
您的代码如下:
library(effsize)
f <- list(c("pre", "post1"), c("post1", "post2"))
res <- lapply(split(df, df$vars), function(DF)
sapply(f, function(g) {
D <- subset(DF, phase %in% g)
D$phase <- fct_drop(D$phase)
cohen.d(value ~ phase, data = D, paired = TRUE)$estimate
})
)
res
#$a
#[1] -1.5663301 0.2495671
#
#$b
#[1] -0.2716963 0.0659341
如此
function replace_string($text)
{
return preg_replace('/\[([^\]]+)\]+/', "[I'm a $1!]", $string);
}
不确定是否要保留方括号,是否要保留方括号
嘘,我好!我是个婴儿!在你我是老鼠!
只需使用:
<?php
$string = 'Booo ahh [Hello] and what is [Baby] at your [Mouse]';
echo replace_string($string);
// will display
// Booo ahh [I'm a Hello!] and what is [I'm a Baby!] at your [I'm a Mouse!]
您可以在此处查看正则表达式:https://regex101.com/r/8hJQr0/1