XML 파일이있어서 기본 문자열에서 특정 하위 문자열 만 읽어야합니다. XML 파일은 다음과 같습니다Regex를 사용하여 Powershell XML 문자열에서 문자열 찾기
이<?xml version="1.0" encoding="utf-8"?>
<Report Version="10.0">
<Entities>
<Entity Name="\\sharing\Data\SB\**appname**\wcf\Utilitysvc\bin\svcUtility.Host.dll">
<Mods>
<Mod Name="svcUtility.Host.dll" AssemblyVersion="1.0.2000.001">
<Fields>
<Field Name="TIndex" Value="100" />
<Field Name="Vindex" Value="200" />
</Fields>
</Mod>
</Mods>
</Entity>
</Entities>
</Report>
이 XML의 주요 문자열 인 -
<Entity Name="\\sharing\Data\SB\**appname**\wcf\Utilitysvc\bin\svcUtility.Host.dll">
그리고 그것에서 단지 "APPNAME"를 인쇄해야합니다.
powershell에서 regex를 사용하여 이것을 인쇄하려면 어떤 조건 논리를 사용할 수 있습니까? 그리고 그것은 appname 다음에 \ wcf 일 필요는 없습니다 .. 그것은 dll 경로를 기반으로 할 수 있습니다.
<Entity Name="\\sharing\Data\*SB*\**appname**\**Web**\Utilitysvc\bin\svcUtility.Host.dll">
또는
<Entity Name="\\sharing\Data\*SB*\*DEVCS*\**appname**\**junk**\Utilitysvc\bin\svcUtility.Host.dll">
내가 일반적인 선택 -String 방법이 있습니다 : 같은 예를 들어, 수 있는가? ,
감사합니다 .. 물론이 테스트
인 Ashish
을 그 ** APPNAME ** 같은 position.Please에 항상 내 질문에 편집을 참조 . if 조건으로 코드를 사용하려면 어떻게해야합니까? 예를 들어 : (엔터티 이름 = "\\ 공유 \ 데이터 \ SB \ ** appname ** \ wcf \ Utilitysvc ...) 경우 $ xml.Report.Entities.Entity.Name.split ('\') [5 ] else $ xml.Report.Entities.Entity.Name.split ('\') [6] –