ข้อผิดพลาด regex กับการค้นหา ISBN

สวัสดี ใครเห็นบ้างว่าเกิดอะไรขึ้นกับ regex นี้ ฉันได้มาจาก ที่นี่ และได้ทดสอบแล้วใน สิ่งนี้ และทุกอย่างถูกตรวจสอบแล้ว แต่ฉันได้รับข้อผิดพลาดนี้

ตัวคั่นต้องไม่เป็นตัวอักษรและตัวเลขหรือแบ็กสแลช

นี่คือรหัสของฉัน

$input = $item_details['description'];
$regex = '^[0-9]{9}[[0-9]|X|x]$^';
preg_match($input, $regex, $output);
echo ($output);

person space ranger    schedule 01.06.2012    source แหล่งที่มา
comment
Regex ในหน้านั้นคือ: ^[0-9]{9}[[0-9]|X|x]$ โปรดทราบว่าไม่มี '^' ต่อท้าย และอยู่ในเครื่องหมายคำพูดคู่ซึ่งไม่ใช่เครื่องหมายเดี่ยว ไม่แน่ใจว่าช่วยได้ไหม ฉันไม่ได้/จะไม่ใช้ php   -  person brepro    schedule 01.06.2012
comment
ฉันได้รับมันแล้ว ฉันผสม varaibles ของมัน regex ก่อน จากนั้นจึงสตริงที่จะค้นหา   -  person space ranger    schedule 01.06.2012


คำตอบ (1)


พยายาม:

$regex = '/^[0-9]{9}([0-9]|X|x)$/';

or

$regex = '/^[0-9]{9}[0-9Xx]$/';

or

$regex = '/^[0-9]{9}[0-9X]$/i';
person codaddict    schedule 01.06.2012
comment
ขอบคุณสำหรับการตอบรับ! มันทำให้ฉันมีข้อผิดพลาดเดียวกันคำเตือน: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash - person space ranger; 01.06.2012