PHP正则表达式仅从数字中删除破折号

时间:2018-10-10 06:24:39

标签: php preg-replace

我正在寻找一个正则表达式来仅替换包含数字的单词中的破折号(-)

示例

  

string:x-y-z 1-2-3-4应该变成x-y-z 1234       (x-y-z保持不变,1-2-3-4代替破折号)

     

字符串:1-2-3-4应该变成1234

     

string:x-y-z应该保持x-y-z

需要任何帮助

4 个答案:

答案 0 :(得分:2)

CREATE TYPE [dbo].[ServicesIDs] AS TABLE(
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [ServiceID] [int] NULL,
    PRIMARY KEY CLUSTERED 
(
    [ID] ASC
)WITH (IGNORE_DUP_KEY = OFF)
)
GO

找到所有带数字的破折号,然后加一个数字,然后对它们进行核对。

答案 1 :(得分:0)

这将对您有所帮助;

services.yaml

答案 2 :(得分:0)

尝试这个:

$x = preg_replace('/(?=(^|\s)\d+)-|-(?=\d+(\s|))/', '', 'x-y-z 1-2-3-4');

答案 3 :(得分:-2)

您可以这样做

$string = preg_replace('/-/',' ',$string);

您也可以不使用正则表达式

$string = str_replace('-','',$string);

$string = strtr($string, '-', '');