【问题标题】:PHP: Using preg_match to trim characters proceeding '-'PHP:使用 preg_match 修剪字符进行 '-'
【发布时间】:2015-11-10 09:23:42
【问题描述】:

我有一个未序列化的数组,我正在尝试修改数组中的字符串并删除继续进行的字符,包括连字符。

字符串看起来像这样,它的长度并不总是规则的,虽然 'SOMETEXT - 150 x 50'

我尝试了正则表达式,但它不起作用,这是我第一次尝试创建正则表达式。

$item['options']['Size'] = preg_replace('/^[^-]*,\s*/', '', $item);

如果有人愿意在这里为我指出正确的方向,那就太好了。

【问题讨论】:

  • 你想要的输出是什么?你的问题有点不清楚
  • 抱歉,我正在尝试删除字符串中连字符前的所有字符:'SOMETEXT - 150 x 50'

标签: php regex preg-match


【解决方案1】:
preg_replace('/-[^-]*$/', '', $item);

这应该为你做。

【讨论】:

  • 太棒了。这对我来说将是一项相当常规的任务,出于兴趣,我将如何配置该 reg ex 以删除连字符之前的所有内容?我试图弄清楚语法。谢谢
  • @LiamFell ^[^-]* 应该这样做
  • 那么完整的功能应该是这样的? preg_replace('/^[^-]*$/', '', $item);
  • @LiamFell preg_replace('/^[^-]*/', '', $item); 你不需要$ der
猜你喜欢
  • 2015-06-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-10
  • 1970-01-01
相关资源
最近更新 更多