2010-02-17 2 views
2

문자열에 줄 바꿈, 공백, HTML 태그 등이있을 수 있기 때문에 원하는 결과가 아닌 반면 정규식을 사용하여 데이터를 추출하는 데 문제가있는 것은 사실이지만 문자열에있는 내용을 실제로 볼 수 있습니다. 디버거는 실제 텍스트 만 표시합니다. 이걸 어떻게 처리하니?Yahoo-Pipes에서 인쇄 할 수없는 문자와 html 태그를 볼 수 없을 때 regex를 사용하는 방법은 무엇입니까?

답변

0

경우]를 : 작품을 내가 하나를 찾을 때까지

</a> 

가 그럼 난 정규식 테스터에 다음과 같은 패턴을 시도 할 수 있습니다 : 예를 들어, 선이 끝나는 경우 문자열의 내용이 HTML이면 디버거에서 "HTML"또는 "소스"를 볼 수 있습니다. 소스에는 HTML 태그가 표시되어야합니다.

그러나 걱정거리가 공백 인 경우 충분하지 않을 수 있습니다. 유일한 옵션은 원본 페이지에서 "소스보기"입니다.

최선의 행동은 정규 표현식에서 이러한 가능성을 명시 적으로 처리하는 것입니다. 예를 들어 대상 문자열에 공백이 들어간다 고 생각되는 경우 중요한 위치에 \s* 패턴을 사용하십시오. 그것은 0 개 이상의 공백, 탭 및 새 행과 일치합니다 (줄 바꿈을 위해서는 정규식 패널에서 "s"옵션을 선택해야합니다).

그러나 소스 텍스트 및 사용중인 정규식의 구체적인 예는 없지만 조언은 일반적인 경우에만 가능합니다.

0

내가 뭘합니까 (당신이 사용하는 동일한 정규식 엔진을 사용하는) 정규식 테스터를 사용하고 그것에 패턴을 테스트합니다. 보이지 않는 문자를 표시하는 텍스트 편집기를 사용해 보았지만 혼란에 빠지게되었습니다.

그래서 저는 시행 착오를 거칩니다.

</a>. 
</a>.. 
</a>\s 
</a>\s* 
</a>\n 
</a>\r 
</a>\r\n 

+0

질문은 일반 정규 표현식을 테스트하는 방법이 아니라 실제로 인쇄 할 수있는 문자열과 html이 아니기 때문에 실제로 yahoo 파이프의 소스 ​​문자열을 보는 방법입니다. – CptanPanic

+0

나는 그 질문을 이해했다. 내 대답은 여전히 ​​적용됩니다. 어떤 텍스트가 사용하고있는 인쇄 할 수없는 문자의 종류를 알아 내고 싶을 때, 그 텍스트를 정규식 테스터에 붙여넣고 일치 할 때까지 위의 정규식을 실행합니다. – PeterM

관련 문제