2014-07-17 3 views
-1

배열 내의 모든 링크를이 형식 "\\domain\share"에서 "<a href=``""\\domain\share"``">\\domain\share</a>"으로 바꾸려면 HTML 호환이 가능해야합니다 (이중 작은 따옴표없이 StackOverflow에서 서식 문제가 발생 함).배열의 PowerShell 문자열 조작

$arrayJobError = @() 
$arrayJobError = "ERROR | Path doesn't exist: UNC, `"\\doman\Share`"" 
$arrayJobError += "This path `"\\doman\Share`" isn't right!" 

내가 "*`"\ "이 $arrayJobError -match " 같은 노력했지만 정말 바보 같은 증거 아니에요 내가 정말 가장 좋은 방법은 배열 내에서 해당 부분을 대체하는 것이 무엇인지 몰라?

내가 문자열 조작에 멍청한 놈이야로

어떤 도움에 감사드립니다.

+0

을 regex를 사용하여 문자열에서 "\\ domain \ Share"를 추출하고 다음과 같이 형식을 지정하려고합니까? ' "\\domain\share"'? – Raf

+0

예 Raf 그게 내가하려는거야. 결국 링크는 올바른 HTML 코드로 대체되어야하며 나머지 모든 것은 제자리에 있어야합니다. 나는 또한'$ temp'와 같은 문자열 형식 (System.Object)으로 입력을 캡쳐 한 다음 나중에 배열 (System.Array)에 결과를 더 쉽게 추가 할 수 있습니다. – DarkLite1

답변

1

나는 당신이 $arrayJobError와 함께 일을 정확히 이해 확실하지 않다, 그런데 당신이 $arrayJobError 위를 정의 오히려 문자열의 배열보다 연결된 문자열이된다 다음은 내가 생각하는 것입니다 :

$arrayJobError = @("ERROR | Path doesn't exist: UNC, `"\\doman\Share`"","This path `"\\doman\Share`" isn't right!") 
$regex = '"(.+?)"' 
$arrayJobError -replace $regex, "`"<a href=`"`$1`">`$1</a>`"" 

결과 :

ERROR | Path doesn't exist: UNC, ""<a href="\\doman\Share">\\doman\Share</a>"" 
This path ""<a href="\\doman\Share">\\doman\Share</a>"" isn't right! 

당신이 경우, 모든 일치 처리 할 때 사용합니다 html 태그를 경로를 추출하고 추가 한 후 :

[regex]::matches($arrayJobError, $regex).Value | % { 
    "`"<a href=`"" + $_ + "`">" + $_ + "</a>`"" 
} 

결과 :

"<a href="\\doman\Share">\\doman\Share</a>" 
"<a href="\\doman\Share">\\doman\Share</a>" 
+0

나는 당신이 제공 한 첫 번째 해결책을 따랐다. 도와 주신 Raf에게 다시 한번 감사드립니다. 거기에 도움을 줄 수있는 사람들이 있다는 것을 아는 것은 정말 기쁩니다. 더 명확하지 않은 점에 대해 사과드립니다. 다음에 더 잘할 수 있도록 노력하겠습니다 (직접 해결할 수 없다면). – DarkLite1

+0

'\\ domain \ share 1 \ share'와 같은 경로에 공백이있는 문제는 하나뿐입니다. – DarkLite1

+0

'\\ domain.net \ bnl \ DEPARTMENTS \ share \ share1 \ SHARE \ Target1', 아마 여러 개의 슬래시 때문입니다. – DarkLite1