2012-10-05 35 views
5

Tôi muốn tạo ra một biểu thức chính quy trong java sử dụng thư viện tiêu chuẩn mà sẽ thích ứng với câu sau đây:Regular Expression của một từ cụ thể

12 of 128 

Rõ ràng là con số có thể được bất cứ điều gì mặc dù ... Từ ngày 1 chữ số để nhiều

Ngoài ra, tôi không chắc chắn làm thế nào để thích ứng với từ "của" nhưng tôi nghĩ có lẽ cái gì đó dọc theo dòng:

[\d\sof\s\d] 

Trả lời

10

này nên làm việc cho bạn:

(\d+\s+of\s+\d+) 

này sẽ cho rằng bạn muốn chụp các khối đầy đủ các văn bản như "một nhóm", và có thể có một hoặc-nhiều ký tự khoảng trắng ở giữa mỗi (nếu chỉ có một không gian, bạn có thể thay đổi \s+ chỉ với \s).

Nếu bạn muốn chụp những con số riêng biệt, bạn có thể thử:

(\d+)\s+of\s+(\d+) 
3

Bạn muốn điều này:

\d+\sof\s\d+ 

Sự thay đổi có liên quan từ những gì bạn đã có sự bổ sung của hai là cộng dấu hiệu. Điều đó có nghĩa là, nó phải khớp với nhiều chữ số nhưng ít nhất một chữ số.

mẫu: http://regexr.com?32cao

1

regexp này

"\\d+ of \\d+" 

sẽ phù hợp với ít nhất một đến bất kỳ số lượng chữ số, tiếp theo là chuỗi "của" theo sau một đến bất kỳ số lượng chữ số.

Các vấn đề liên quan