2015-07-23 2 views
0

Что такое регулярное выражение в powershell для чтения значений между «JPEG» и «5.»?Регулярное выражение powershell

JPEG_5.10.002.000.txt 
JPEG_pnrl_5.10.002.000.txt 
JPEG_pnrl_Explorer_5.10.002.000.txt 
jpeg_fsrg_5.10.002.000.txt 
JPEG_Help_5.10.002.000.txt 
JPEG_5.10.002.001.txt 
JPEG_pnrl_5.10.002.001.txt 
JPEG_Help_5.10.002.001.txt 
JPEG_pnrl_Explorer_5.10.002.002.txt 
JPEG_fsrg_5.20.002.002.txt 
JPEG_Help_5.20.002.002.txt 
JPEG_pnrl_5.20.002.003.txt 
JPEG_fsrg_5.20.002.003.txt 

Я использовал следующее регулярное выражение для получения значения, но это не working.What является лучшим образцом для получения значения между «JPEG» и «5»

$r = [regex] "[JPEG]+([a-zA-Z]+).*" 
$match = $r.match("JPEG_pnrl_Explorer_5.10.002.000.txt") 
$text = $match.groups[1].value 

ответ

2

Попробуйте JPEG(.*?)5

Там нет необходимости, чтобы захватить всю строку. Это будет захватывать все до первого 5. ? делает его неживым, поэтому он не будет захватывать последние 5.

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