[英]Simple regex not
我正在寻找一种仅在一个preg_replace
编写以下内容的方法
$url = "stackoverflow";
if(!preg_match('/apple/',$url)){
$url = $url.".apple.com";
}
$str = 'something';
echo preg_replace('/^(?:(?!apple).)*$/is', '$0.apple.com', $str);
PS:修饰符is
可能是有用的。
(?: )*
为非捕获模式。 它匹配零个或多个(?!apple)
实例。 除了apple
和$0
之外,其他任何东西都将在模式匹配时告知整个字符串。 上面建议的示例不一样,因为当字符串不是以apple
开头时,它将匹配任何内容,因为?!apple
条件仅在字符串的开头应用一次。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.