Hiện vẫn còn là một vấn đề tuy nhiên, tất cả các câu trả lời trên xem xét 12i hoặc a2 số hợp lệ khi họ sh không thể.
Sau đây có thể giải quyết vấn đề này
var matches = Regex.Matches(input, @"(?:^|\s)\d+(?:\s|$)");
Nhưng giải pháp này cho biết thêm một vấn đề nữa :) Điều này sẽ nắm bắt được không gian xung quanh số nguyên. Để giải quyết điều này, chúng tôi cần phải nắm bắt giá trị của số nguyên thành một nhóm:
MatchCollection matches = Regex.Matches(_originalText, @"(?:^|\s)(\d+)(?:\s|$)");
HashSet<string> uniqueNumbers = new HashSet<string>();
foreach (Match m in matches)
{
uniqueNumbers.Add(m.Groups[1].Value);
}
Nguồn
2017-11-08 16:14:28
Vui lòng quyết định ngôn ngữ nào bạn cần câu trả lời. Các đối tượng regex trong .NET không giống như ngôn ngữ Java. – Oded
@Oded ok, xong. – David