2014-12-23 3 views
0

Я ищу строки, соответствующих следующие один в моем исходном коде:Regex для поиска строки, соответствующей следующие один

<CONSTANT_STRING_1> <CONSTANT_STRING_2> <VARIABLE_DIGITS> <CONSTANT_STRING_3> 

где

<CONSTANT_STRING_1>, <CONSTANT_STRING_2> и <CONSTANT_STRING_3> являются постоянными строками типа «ABC», " "DEF" и "GHI".

<VARIABLE_DIGITS> представляет собой случайное число из 14 цифр, как "123456789"

Примечание: между словами есть пробелы.

Я ищу для поиска <CONSTANT_STRING_1> <CONSTANT_STRING_2> <WHATEVER> <CONSTANT_STRING_3>. Как я могу создать Regex?

+1

Вы имеете в виду это ' \ d {14} '? –

+0

@ Авинаш Радж - Да! Отправьте ответ, и я приму его как решение моей проблемы. Благодарю. – Backo

ответ

0

Вы можете попробовать следующее регулярное выражение.

<CONSTANT_STRING_1> <CONSTANT_STRING_2> \d{14} <CONSTANT_STRING_3> 

Место, где \d{14} соответствует точному 14-значному номеру.

2

Я читаю, что под «постоянной строкой» вы подразумеваете строки символов? Если да, то ниже будет работать, чтобы найти эту полную строку, которую вы ищете. Btw сайт связан ниже действительно отлично подходит для визуализации такого рода проблемы ... дайте ему попробовать :)

(([a-zA-Z]+\s){2})[0-9]{14}\s([a-zA-Z]+)$ 

Regular expression visualization

Debuggex Demo

разбить его ...

(([a-zA-Z]+\s){2}) означает строку из одного или нескольких символов, состоящую из букв LC или UC, за которыми следует пробел, и все это (символы + пробел) повторяется дважды

[0-9]{14}\s 14 цифр с последующим пробелом. Поскольку @Avinash сказал, что \ d {14} \ s является другим способом записи этой части

([a-zA-Z]+)$ Другая строка одного или нескольких символов. $ Указывает, что это заканчивает строку, которую вы ищете

Смежные вопросы