Php 删除“后的所有字符”-&引用;
我原以为这会奏效,但它似乎只是删除了-和后面的空白Php 删除“后的所有字符”-&引用;,php,regex,Php,Regex,我原以为这会奏效,但它似乎只是删除了-和后面的空白 $itemList[] = preg_replace('/-(.*?)/i', "", $temp['item']); 尝试: $符号与输入的结尾匹配,因此强制。*抓取到结尾 添加一个?在*之后,它将变得不贪婪,这意味着它将获取可能的最小值,而不是最大值,因此在这种情况下,它正是您不想要的。尝试: $符号与输入的结尾匹配,因此强制。*抓取到结尾 添加一个?在*之后使其不贪婪,这意味着它将获取可能的最小值,而不是最大值,因此在这种情况下,它正是
$itemList[] = preg_replace('/-(.*?)/i', "", $temp['item']);
尝试:
$符号与输入的结尾匹配,因此强制。*抓取到结尾
添加一个?在*之后,它将变得不贪婪,这意味着它将获取可能的最小值,而不是最大值,因此在这种情况下,它正是您不想要的。尝试:
$符号与输入的结尾匹配,因此强制。*抓取到结尾
添加一个?在*之后使其不贪婪,这意味着它将获取可能的最小值,而不是最大值,因此在这种情况下,它正是您不想要的。为什么使用非贪婪
*?
$itemList[] = preg_replace('/-.*/i', "", $temp['item']);
而且,捕获参数是不必要的。为什么要使用非贪婪的
*?
$itemList[] = preg_replace('/-.*/i', "", $temp['item']);
而且,捕获参数是不必要的。实际上,删除
?
就足够了*
将贪婪并尽可能匹配。不过,这两种方法都有效。实际上,删除?
就足够了*
将贪婪并尽可能匹配。不过,这两种方法都有效。