あなたは最後のスラッシュをエスケープしたい(または削除する、正規表現に含まれるかどうかわからない)?また、実際には意味をなさない0の前にバックスラッシュがあります。
# escape it if it's supposed to be in there.
/[^A-Za-z\s0-9 - @ .]\//
または
# use a different character as a delimiter
%[^A-Za-z\s0-9 - @ .]/%
または
# remove it if it's a typo!
/[^A-Za-z\s0-9 - @ .]/
また、あなたが[:alnum:]
ショートカットを使用することができます知っていましたか? (src)
# matches alpha numeric, "-", "@", and "."
/[[:alnum:][email protected]]/
うまくいけば、最終的な編集:
私はそれが少し混乱だ、あなたも最初の場所であなたの関数を見てみましょうお勧めしたいです。基本的に3つの条件、1)正規表現を渡すか、2)最小の長さ、3)最大の長さかをチェックしたい。これらの戻りブール値(またはブール値として正しく評価するもの)の3つのすべて以来、以下のように、あなたが機能を簡素化することができます
function CheckAlphanumeric($element,$minlength,$maxlength) {
// returns TRUE if it matches all conditions, FALSE if one fails.
return preg_match("/[[:alnum:][email protected] ]/", $element) && strlen($element) >= $minlength && strlen($element) <= $maxlength;
}
2つの閉じた '/'文字のうちの1つを削除しようとしましたか? –
@SurrealDreams私はまだ警告メッセージを受け取りました。 – user1154295