2011-12-15 1 views
0

Пример строки:Regex в соответствии с положения 13 до конца строки

DFDBDFDFDF21R123 
DFDBDFDFDF21DFD 

мне нужно регулярное выражение, которое при запуске соответствует тыс следующая:

R123 
DFD 

(нет EOL символов)

Спасибо, я надеюсь, что есть простое решение, которое мой мозг не вызывает.

+1

Я думаю, вы имеете в виду позицию 12 в конце строки, поскольку индекс 0 намного чаще, чем индекс 1. – jbranchaud

+0

Я сказал это в своем ответе, но я думаю, что стоит использовать подстроку вместо регулярного выражения. Практически все языки имеют эту функцию. –

ответ

1
/.{12}(.*)/ 

Соответствующие первые 12 символов, а затем остальные.

Но я согласен с @chance: substr было бы лучше.

3
/^.{12}(.*)$/ 

Первая часть будет искать первые 12 символов и выбросить их, а вторая часть будет группировать остальные.

Редактировать: как указывали другие, вы должны просто использовать подстроку на любом языке, который вы используете. Регулярное выражение избыточное.

1

Я бы предложил вместо этого использовать подстроку на вашем языке.

Если вы действительно хотите регулярок решение, несмотря на это, будучи примерно в сто раз медленнее и более сложным, чем вам действительно нужно, попробовать что-то вроде этого:

/.{12}(.*)/ 

Ваш желаемый результат, то в первую группы захвата.

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