Làm thế nào để kết hợp một biểu thức RegEx để nó phù hợp. - \ dấu cách và không có dấu cách và các chữ cái in hoa và in thường


-1

Tôi có nhóm số ... có ai biết RegEx sẽ khớp và kết hợp như sau:

BG18.RZBB.9155.0123.4567
BG18 RZBB 9155 0123 4567 
BG18RZBB91550123456789
BG18-RZBB-9155-0123-4567

@DavidPostil Tôi thực sự không biết làm thế nào để giải thích rõ ràng hơn. Tôi chỉ đang cố gắng viết một REGEX nơi tôi có thể kết hợp các số hoặc dấu chấm, dấu gạch nối, khoảng trắng không có chữ cái và chữ số không. Tôi sẽ thêm vào chuỗi thử nghiệm trong REGEx101 chạy biểu thức và tôi sẽ nhận được một kết quả khớp.

Nỗ lực của tôi như sau:

BG\d{2}[ -.]\d{4}[ -.]\d{3}[ -.]\d{4}[ -.]\d{4|\bCH\d{22}\b

1
Bạn cần phải làm việc để giải thích câu hỏi của bạn. Chính xác những gì bạn có nghĩa là "kết hợp và kết hợp".
DavidPostill


@DavidPostill --- Tôi có bốn nhóm số BG18.RZBB.9155.0123.4567 BG18 RZBB 9155 0123 4567 BG18RZBB91550123456789 BG18-RZBB-9155-0123-4567 Tôi cần một biểu thức regualr sẽ kết hợp với tôi bốn nhóm số tôi đã thử BE \ d {2} [-.] \ d {4} [-.] \ d {3} [-.] \ d {4} [-.] \ d {4 | \ bBE \ d {22} \ b Tôi sẽ đọc hướng dẫn theo yêu cầu của bạn
mmohan

Xin vui lòng chỉnh sửa câu hỏi và hiển thị chính xác những gì bạn mong đợi đầu ra để được cho mỗi đầu vào
DavidPostill

Biểu thức chính quy khớp với chuỗi (nghĩa là, chuỗi ký tự hoặc khối văn bản); họ không thay đổi chuỗi văn bản (ví dụ: kết hợp chúng). Để làm điều đó, bạn cần một công cụ - một lệnh / chương trình / tiện ích. Bạn có một trong tâm trí? Là gì (Gợi ý: Notepad ++ và sed là một vài lựa chọn của bạn.) Xin vui lòng không trả lời trong các bình luận; chỉnh sửa câu hỏi của bạn để làm cho nó rõ ràng hơn và đầy đủ hơn.
Scott

Câu trả lời:


0

Như @Davidpostill nói rằng câu hỏi của bạn đòi hỏi phải làm rõ hơn vì nó phụ thuộc vào ngôn ngữ lập trình / kịch bản. Nhưng nếu bạn đã sử dụng nó trên regex101.com như trực tuyến. Tôi đã sao chép này trong hộp đầu vào.

G18.RZBB.9155.0123.4567

BG18 RZBB 9155 0123 4567

BG18RZBB91550123456789

BG18-RZBB-9155-0123-4567

Và nhập biểu thức thường xuyên của bạn với một số sửa đổi.

B*G\d{2}[ -.]\w{4}[ -.]\d{4}[ -.]\d{4}[ -.](\d{4})

Tôi nghĩ khi bạn nói về sự kết hợp, có lẽ bạn muốn làm cho chúng trở thành tài liệu tham khảo trở lại. Trong trường hợp này, bạn cần ngoặc đơn.

Giải thích:

B*, chuỗi chứa "B" char zero hoặc nhiều lần hơn.

G, chuỗi theo sau với char "G" chính xác chỉ một lần.

\d{2}, chuỗi theo sau với 2 chữ số (0-9)

[ -.], chuỗi theo sau với bất kỳ char nào trong ngoặc vuông. ( "", "-". "." )

..........

(\d{4}), cuối cùng chuỗi theo sau với 4 chữ số. Và nhóm này để truy cập nó trong lĩnh vực thay thế.

Vì vậy, bạn có thể truy cập 4 chữ số cuối cùng trong trường thay thế chỉ gõ " $ 1 "(Không có dấu ngoặc kép).

Nó sẽ không chỉ phù hợp với dòng này

BG18RZBB91550123456789

Bởi vì sau "B * G \ d {2}" phần này của regex nó phải tuân theo bất kỳ nhân vật nào "", "-", "." vì vậy nó phá vỡ các trận đấu trong bước này

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.