Php 是否删除unicode文本中的删除线?

Php 是否删除unicode文本中的删除线?,php,regex,Php,Regex,我偶尔会收到用户的输入,他们通过文本生成器使用这些恼人的点画,这会破坏我的代码 我尝试了一些我在这里找到的代码,所以 $string = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $string); 它是有效的,但我只需要它来替换组合的长笔划覆盖层 然而,仅将其添加到我的正则表达式中并不能达到目的。它什么也找不到 救命啊 我不确定这是否完全有效,但根据我的测试,它会删除删除删除线。 感谢@Jonny 5提及\xCC\xB6 $text = "s̶t

我偶尔会收到用户的输入,他们通过文本生成器使用这些恼人的点画,这会破坏我的代码

我尝试了一些我在这里找到的代码,所以

$string = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $string);
它是有效的,但我只需要它来替换组合的长笔划覆盖层

然而,仅将其添加到我的正则表达式中并不能达到目的。它什么也找不到


救命啊

我不确定这是否完全有效,但根据我的测试,它会删除删除删除线。 感谢@Jonny 5提及
\xCC\xB6

$text = "s̶t̶r̶i̶k̶e̶t̶h̶r̶o̶u̶g̶h̶";
$st = "\xCC\xB6";/*seems to work best even with other alphabets*/
/*[chr(204), chr(182)];#add others if necessary?*/
var_dump($text);
if(preg_match("#[" . $st . "]#", $text)){/*preg_match("#[" . implode('|', $st) . "]#", $text)*/
    $text = str_replace($st, '', $text);
}
var_dump($text);

你是想把
改成
foo-bar
?山姆,这完全正确。
$str=str\u替换(“\xCC\xB6”,”,$str)
会有帮助吗?为什么不直接执行
str_replace()
并避免运行额外的
preg_match()
来查看是否有任何字符需要替换。我将其放入,以便用户可以查看如何检查并替换它,并决定是否需要。