6

文字、数字、またはダッシュ「-」以外の文字列を置き換えようとしています。

この行を変更してダッシュを含めるにはどうすればよいですか?

$link = preg_replace('/[^a-z0-9]/', "", strtolower($_POST['link_name']));

そこに挿入するだけですか?

$link = preg_replace('/[^a-z0-9-]/', "", strtolower($_POST['link_name']));
4

2 に答える 2

16

-正規表現の特殊文字なので、エスケープする必要があります。

$link = preg_replace('/[^a-z0-9\-]/', '', strtolower($_POST['link_name']));
于 2012-06-04T13:12:36.130 に答える
9

-クラスの最後に追加するだけです( [^a-z0-9-])。

-クラスの終わりには特別な意味はありません。または、円記号でエスケープします。

于 2012-06-04T13:10:28.873 に答える