PHP中的PREG_REPLACE-NOT条件的正则表达式

2022-03-22 00:00:00 regex php preg-replace

我正在尝试使用preg_place用PHP编写一个函数,其中它将替换列表中找不到的所有字符。通常我们会替换找到它们的位置,但这次不同。

例如,如果我有字符串:

$mystring = "ab2c4d";

我可以编写以下函数,将所有数字替换为*:

preg_replace("/(d+)/","*",$mystring);
但是我想从a到z替换那些既不是数字也不是字母的字符。它们可以是#$*();~!{}[]|/.,<;>?‘E.T.C.

因此,除数字和字母之外的任何内容都应该替换为其他内容。我该怎么做?

谢谢


解决方案

可以使用negated character class(在课程开头使用^):

/[^da-z]+/i

更新:我的意思是,您必须使用否定的字符类,而您可以使用我提供的字符类,但也有其他字符类;)

相关文章