Tôi đang sử dụng này: if(!preg_match('/^+[0-9]$/', '+1234567'))
preg_match: không có gì để lặp lại/không phù hợp
và đang được nhận:
Cảnh báo: preg_match() [function.preg-match]: Compilation thất bại: không có gì để lặp lại tại offset 1
mọi ý tưởng tại sao?
cập nhật: Bây giờ sử dụng này: if(!preg_match('/^\+[0-9]$/', '+1234567'))
và đang nhận được không phù hợp.
mọi ý tưởng tại sao?
Chúc mừng, Đã chỉnh sửa câu hỏi ngay bây giờ để phản ánh vấn đề hiện tại. – Hailwood
Hailwood, bạn không nên loại bỏ vấn đề cũ, nhưng nên hiển thị cả hai cùng nhau. (chỉ cần chỉnh sửa để làm điều đó). –
Ngoài ra, vấn đề hiện tại là hành vi chính xác - bạn đang yêu cầu regex khớp với một dấu cộng, một đơn 0..9, sau đó tìm vị trí cuối của dòng, mà đầu vào của bạn không làm. Để khớp với đầu vào được cung cấp của bạn, bạn muốn hoặc là '^ \ + [0-9] + $' hoặc '^ \ + [0-9] {7} $' hoặc tương tự. –