Tôi có một regex mà tôi nghĩ là đã hoạt động chính xác cho đến bây giờ. Tôi cần phải phù hợp với một nhân vật tùy chọn. Nó có thể ở đó hoặc có thể không.
Đây là hai chuỗi. Chuỗi trên cùng được khớp trong khi chuỗi dưới thì không. Sự vắng mặt của một chữ cái trong chuỗi thấp hơn là điều làm cho nó thất bại.
Tôi muốn nhận được một chữ cái sau 5 chữ số bắt đầu nếu nó ở đó và nếu không, tiếp tục lấy phần còn lại của chuỗi. Bức thư này có thể A-Z
.
Nếu tôi xóa ([A-Z]{1}) +.*? +
khỏi regex, nó sẽ khớp với mọi thứ tôi cần ngoại trừ chữ cái nhưng nó khá quan trọng.
20000 K Q511195DREWBT E00078748521
30000 K601220PLOPOH Z00054878524
Đây là regex tôi đang sử dụng.
/^([0-9]{5})+.*? ([A-Z]{1}) +.*? +([A-Z]{1})([0-9]{3})([0-9]{3})([A-Z]{3})([A-Z]{3}) +([A-Z])[0-9]{3}([0-9]{4})([0-9]{2})([0-9]{2})/