2016-07-20 4 views
0

정규식은 실제로 내 장점이 아니며 배우려고합니다. 지금이 하나와 싸우고 있습니다.PowerShell에서 Regex를 사용하여 부분 문자열 맞추기

<fraglink id="230681395" resid="1057000484"> 

나는 그 텍스트의 부하와 함께 파일을 가지고 있고, 위와 같이 모든 이제 다음 비트가 나타납니다. 따옴표 사이에 숫자를 입력하고 싶습니다. resid=

앞으로 어떤 모양을 기대하고 있습니다/뒤가 필요합니다. 당신이 원하는 것처럼

답변

2

가 보이는 같은 정규 표현식 :

resid="([0-9]+)"

및 콘텐츠를 XML과 같은 때문에, 당신은 아마 가 잡아regex를 사용하지 않는해야 $ (1)

+0

네, 맞아요. –

1

잡기 위해 당신의 원하는 값. 전체 파일을 공유하는 경우 예를 들어 xpath를 사용하여 값을 올바르게 선택하는 방법을 보여줍니다. 당신이 교육 목적으로 정규식을 사용하려는 경우

그러나,이 시도 :

(?<=resid=")\d+ 

으로 :

$content = Get-Content 'your_file_path' -raw 
[regex]::Match($content, '\bresid="([^"]+)').Groups[1].Value 
0

을 룩어 ((?<=pattern))를 사용하여, 사용자의 패턴은 같을 수 Regex.Match() :

$id = [regex]::Match($inputString,'(?<=resid=")\d+').Value 
관련 문제