У меня есть строка, которая поступает от пользовательского ввода через систему обмена сообщениями, это может содержать серию из четырехзначных чисел, но поскольку пользователи, вероятно, ошибочно вводят вещи, это должно быть немного гибкий. Поэтому я хочу, чтобы позволить им ввести число, или перцовый их сообщение с любой последовательностью символов, а затем просто взять числа, соответствующие форматыРегулярное выражение нахождение пробелов в номерах
=nnnn or nnnn
Для этого у меня есть регулярное выражение:
(^|=|\s)\d{4}(\s|$)
который почти работает, однако, как говорится, что каждая группа из 4-х цифр, должен начинаться с =, пробел, или в начале строки она пропускает любой другой набор чисел
Я попытался это:
(^|=|\s*)\d{4}(\s|$)
Но это означает, что любые четыре цифры, за которыми следует пробел, совпадают - это неверно.
Как я могу соответствовать группы чисел, но включают в себя единое пространство в конце одной группы, и в начале следующего, чтобы уточнить эту строку:
Ack 9876 3456 3467 4578 4567
должны производить матчи:
9876
3456
3467
4578
4567
вам нужно использовать утверждения '? (:^| [= \ S]) \ K \ d {4} (= \ s | $) ' –
Какой язык/библиотека регулярных выражений? – Qix
Это был C#, хотя я, хотя этот RegEx был (в значительной степени) языком агностиком - не так ли? – Morvael