Preg_replace ': 和数字'
Preg_replace ': and numbers'
我遇到了以下问题。
在 Wordpress 中,我正在输出网站上的类别。在这个输出中,他们给出了以下值:
Category:1
现在我有以下代码删除了一个:
$resultx = " " . rgar( $entry, '49' ) ."";
$resultx_ = preg_replace('/\d/' , '', $resultx );
但是当我添加以下规则时:
$resultx_ = preg_replace('/:/' , '', $resultx );
它删除 :
并保留 1
。
有人知道怎么解决吗?
如果你只想去掉最后的冒号和数字,那么使用这个:
$resultx = "Category:1";
$resultx = preg_replace('/:\d*$/' , '', $resultx );
echo $resultx;
Category
第二个 preg_replace
调用的干草堆上的 _
丢失,因此您返回到原始字符串并绕过数字替换。要更正此问题,请执行以下操作:
$resultx = 'Category:1';
$resultx_ = preg_replace('/\d/' , '', $resultx);
$resultx_ = preg_replace('/:/' , '', $resultx_);
但您可以在一个正则表达式中进行 :
和数字替换:
$resultx_ = preg_replace('/[:\d]*/' , '', $resultx);
您也可以用 str_replace
替换数字和冒号:
$resultx_ = str_replace(array_merge(range(0,9), array(':')), '', $resultx);
或rtrim
如果你只想从最后替换它们。
$resultx_ = rtrim($resultx, implode(range(0,9)) . ':');
如果模式正好是 :
,则使用 正则表达式。
我遇到了以下问题。
在 Wordpress 中,我正在输出网站上的类别。在这个输出中,他们给出了以下值:
Category:1
现在我有以下代码删除了一个:
$resultx = " " . rgar( $entry, '49' ) ."";
$resultx_ = preg_replace('/\d/' , '', $resultx );
但是当我添加以下规则时:
$resultx_ = preg_replace('/:/' , '', $resultx );
它删除 :
并保留 1
。
有人知道怎么解决吗?
如果你只想去掉最后的冒号和数字,那么使用这个:
$resultx = "Category:1";
$resultx = preg_replace('/:\d*$/' , '', $resultx );
echo $resultx;
Category
第二个 preg_replace
调用的干草堆上的 _
丢失,因此您返回到原始字符串并绕过数字替换。要更正此问题,请执行以下操作:
$resultx = 'Category:1';
$resultx_ = preg_replace('/\d/' , '', $resultx);
$resultx_ = preg_replace('/:/' , '', $resultx_);
但您可以在一个正则表达式中进行 :
和数字替换:
$resultx_ = preg_replace('/[:\d]*/' , '', $resultx);
您也可以用 str_replace
替换数字和冒号:
$resultx_ = str_replace(array_merge(range(0,9), array(':')), '', $resultx);
或rtrim
如果你只想从最后替换它们。
$resultx_ = rtrim($resultx, implode(range(0,9)) . ':');
如果模式正好是 :
,则使用