초보 정규식 질문드립니다.

· 2012-01-26 (목) 09:39:53 · 1683 · 3
목적은 유투브 에서 동영상 코드만 가져오는 것입니다.

어트게 해서 어렵게 이 부분은 $text 에 담아두게 되었습니다.

$text = http://www.youtube.com/watch?v=CJ0dj-lyqwY

원하는 결과값은
1. "youtube.com/watch?v=" 이 값을 한글로 유투브 라고 str_replace 해서 나오게 하려고 하고요.
2. 유투브 재생 코드 : CJ0dj-lyqwY 요것만 따로 나오게 하려고 합니다.

제가 문제는, 유투브 재생 코드가 대문자,소문자,_ ,-, 이렇게 표현이되는데요.

여기서 " - " 이문자가 들어있으면 "CJ0dj" 값만 가져오고 그뒤에 "-lyqwY" 는 가져오지를 못합니다.

몇번이나 뒤져보고 해보고 하다가 답답하여 질문드립니다.

혹시 어디서부터 그 뒤로 몇글자 길이만큼만 가져와라 이런 정규식도 있을까요?

$text = "http://www.youtube.com/watch?v=CJ0dj-lyqwY";
$Pattern = "/youtube.com\/watch.?.v=(.*?)/i"; <---- 여기를 해결을 못하겠습니다.
preg_match_all( "$Pattern", $text, $result );
print_r( $result );
|

댓글 3개

아래의 소스를 보시면 어떻게 활용해야 하는지 알 수 있을거예요.

<?php
$email = '[email protected]';
$domain = strstr($email, '@');
echo $domain; // prints @example.com

$user = strstr($email, '@', true); // As of PHP 5.3.0
echo $user; // prints name
?>

그러므로 이렇게 적용하면 되지 않을까요?

$text = "http://www.youtube.com/watch?v=CJ0dj-lyqwY";
$Pattern = strstr($text, '=');
$result = substr($Pattern, 1);
echo $result;
ohora님
답변감사합니다.

$text = "http://www.youtube.com/watch?v=CJ0dj-lyqwY";

$text 가 url 이 아닌, 전체 html 소스 라고 한다면,

youtube.com 기준으로 코드를 뽑아와야 하는데요....

여기서 html 은 유투브 메인 전체 html 이라고 생각하구요.

이럴때에는 " = " 는 문자가 만아서 단순하게 = 기준으로는 뽑기가 쉽진 않구요.

youtube.com 기준으로 뽑을 방법이 없을런지요?

^-^;;
그누에 찾아보니 정규식 정보가 많이 있었네요 ^-^;;
답변감사합니다~!
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
12-01-26 조회 1,783
12-01-26 조회 1,816
12-01-26 조회 1,055
12-01-26 조회 1,684
12-01-26 조회 928
12-01-26 조회 1,111
12-01-26 조회 3,705
12-01-26 조회 1,020
12-01-26 조회 969
12-01-26 조회 959
12-01-26 조회 1,616
12-01-26 조회 2,161
12-01-26 조회 869
12-01-26 조회 1,001
12-01-25 조회 888
12-01-25 조회 1,207
12-01-25 조회 1,087
12-01-25 조회 1,059
12-01-25 조회 882
12-01-25 조회 1,663