2014-08-27 3 views
-1

나는 HTML 텍스트 문자열을 가지고있다. 각 <a> 태그에서 href 속성을 가져 와서 태그의 텍스트와 결합하고 싶습니다. 어떻게 href 값을 제거하고 텍스트와 결합합니까?

<a href="www.stackoverflow.com">Hello World!</a> 

<a href="www.stackoverflow.com">Hello World! (www.stackoverflow.com)</a> 

괄호 바람직하지만 필수가되어야 예

.

+0

에 나가 실패 할거야 아마 가장자리 경우가 대체? – Ted

+0

이것은 서버 측 – DenaliHardtail

+0

입니다. 그 hrefs는 어디에 있습니까? 당신은 계층 구조를 설명 할 수 있습니까? – Ted

답변

1

이것은 내 초기 테스트 케이스에서 효과가있는 것 같습니다. 나는 두 캡처 그룹을 사용하고, 그 다음 두 번째와 두 번째 + 첫

private static void Main(string[] args) 
    { 
     string text = @"<a href=""www.stackoverflow.com"">Hello World!</a> <a href=""www.secondsite.com"">Second Site!</a> <a href=""www.thirdsite.com"">Third Site!</a>"; 

     var pattern = "(?<=href=\")([^\">]+)([^<]*)"; 
     var newText = Regex.Replace(text, pattern, "$1$2 ($1)"); 

     Console.WriteLine(newText); 
     Console.Read(); 
    } 

는 서버 또는 클라이언트에

0

왜 CSS로하지 않습니까?

/* HTML */ 
<a href="http://www.google.com">My link</a> 

/* CSS */ 
a:after { 
    content: " (" attr(href) ")"; 
} 

/* Result */ 
My link (http://www.google.com) 

는 여기를 참조하십시오 : 당신이 CSS를 원하지 않는 경우 http://jsfiddle.net/0fvkLzrc/

, 나는 HTML 민첩성 팩을 추천 할 것입니다, 그것은 정규식 또는 유사한 무엇보다 낫다. 링크를 반복하고 속성을 수정할 수 있습니다.

관련 문제