2016-08-23 4 views
0

이전에 물어 보았지만 여전히 .net 구문을 사용하려는 경우 물어볼 가치가 있다고 생각합니다. 또한 샘플/파마 링크를 살펴보고 싶습니다.Regex를 사용하여 상위 사이트 URL 가져 오기

Office 365 Nintex에서 문서에 대한 링크를 만들고 싶습니다. 사용할 수 없으므로 작성해야합니다. {워크 플로 컨텍스트 : 현재 사이트 URL}, 수율

https://domain.sharepoint.com/subsite

난 그냥 단순히 가능한 https://domain.sharepoint.com을 추출 할. 나는

(?<!www\.)(?<=\.)[^\/\.]{5,}{1,2}\/ 
+0

'. * (? = \ /)'을 사용해보세요. 그것은 당신을 위해 그것을해야합니다. 그것은 마지막'/'까지 모든 것을 얻을 것입니다. – ClasG

+0

"가능한 한 간단하게"정의 할 수 있습니까? –

+0

답장을 보내 주신 모든 분들께 고맙습니다. 조만간 테스트 해보고하겠습니다. 예, 간단합니다. 내가 문자열 연산을 사용하기를 원한다는 것을 의미합니다. Replace 또는 Check Match 또는 Split을 선택하거나 필요한 문자열을 꺼냅니다. 그렇지 않으면 내 기본 URL을 추출하기 위해 중간 컬렉션을 구문 분석해야합니다. 나는 이것을 잘 이해할 수 있어야한다 ;-) – westerdaled

답변

1

후속 / 일치 제로 폭 긍정적 인 예견은 그것은 지난 / (?=\/)에 모든 위로를 얻을 수 있습니다

.*(?=\/) 

을 시도하고 덕분에이 표현하지만 너무 세분화를 시도 욕심이 많다 .* 마지막까지 모든 것이 일치합니다.

See it here at regex101. 당신이 간단한 고려 내용에 따라

, 당신은 또한

(.*)\/ 

함께 할과 1

편집 캡처 그룹에서 결과를 얻을 수 있습니다 :

댓글이 문제를 제안 결과는 문자열 대신 컬렉션으로 반환됩니다. 대신 교체하십시오. 그 문자열을 반환해야합니다.

이 비록 다른 전략이 필요합니다 : 그것은 후

/[^/]*$ 

마지막 / 일치해야하고 새로운 것을 (A /되는되지 않음) : 정규식 일치 제거해야 아무것도. 그것을 빈 문자열로 바꾸면 기대되는 결과를 얻을 수 있습니다.

+0

나는 * Extract * 옵션과 함께 사용되기 때문에'. * (? = \ /)'는 OP가 필요하다고 생각한다. 또는'. * (? = /)'. NET 정규식이기 때문에. –

+0

@ClasG .... NET 구문을 사용하면 별볼일없는 것처럼 보입니다. 내 Nintex regex espression에서 Extract 메서드 사용 다음은 출력 로그입니다. SourceURL : https://domain.sharepoint.com/subsite 23/08/2016 12:09 댓글 추출 된 상위 도메인 : [ "https : \/\/domain.sharepoint.com", " "]. 참고 출력 컬렉션 var을 처리 할 수 ​​있습니다. 왜이 문제를 피하려고했는지 볼 수 있습니다. – westerdaled

+0

죄송합니다. 의미하는 바를 모르겠다. 결과를 컬렉션으로 가져 오는 것이 문제입니다. Nintex가 왜 그렇게했는지는 모르겠지만, 대신 Nintex가 대체품으로 교체 할 수 있다고 생각합니다.마지막'/'(포함)의 모든 것을 모두 바꿉니다. 정규식 :'/ [^ /] *'. 문서를 제대로 읽으면 replace가 문자열을 반환하는 것처럼 보입니다. – ClasG

관련 문제