[英]Regex to remove prefix and append suffix
我有一个像这样的字符串:
prefix_foobar
我想删除“ prefix_”部分,并在末尾附加“ _suffix”。
foobar_suffix
是否可以通过仅调用一次preg_replace在PHP中执行此操作?
编写一个模式来删除'prefix_'并将其替换为''是很容易的,但是我在如何追加到末尾的问题上苦苦挣扎。
是的,您可以这样做:
$repl = preg_replace('/prefix_(.+)(?<!_suffix)$/', '${1}_suffix', $input);
负向后查找 (?<!_suffix)
是为了避免在已经存在后缀的情况下添加它。
怎么样:
$output = preg_replace('/prefix_(.*?)/', "$1_suffix", $input);
我个人会这样做:
$var = 'prefix_koko';
echo ltrim($var, 'prefix_').'_my_suffix';
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.