묻고답하기
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
정규표현식에 대한 질문이요
2004.08.14 22:02
정규표현식에 대해 오늘 처음 공부를 시작했습니다. 공부를 하다보니까, 알것 같은데 이해가 잘 안가거나 알기는 알겠는데 혹시 내가 잘 못 생각하고 있는 것이 아닌가 하는 마음이 계속 들어 질문을 드려봅니당. ^^;;
그럼 질문 드릴께요...
질문1)
[a-zA-Z0-9] 는 영문 대/소문자 또는 숫자 1글자를 의미하는 것이잖아요. 그렇다면 [a-zA-Z][0-9]는 첫번째 글자는 반/드/시 영문 대/소문자이고, 두번째 글자는 반/드/시 숫자로 이루어진 2개의 글자를 의미하는 것인가요?
질문2)
이번에는 위의 질문 내용이 제가 생각한 것이 맞다는 가정하에 질문을 드릴께요.
이메일 주소의 패턴을 검사할 때,
[-_a-zA-Z][0-9]{3,}@[a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}.[a-zA-Z]{2,} | [-_a-zA-Z][0-9]{3,}@[a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}
와 같은 정규표현식을 써서 검사하면 되는 건가요? 그리고, 위의 정규표현식에서 한메일(다음메일)을 제외시키고자 한다면...
[-_a-zA-Z][0-9]{3,}@[^(daum|hanmail)a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}.[a-zA-Z]{2,} | [-_a-zA-Z][0-9]{3,}@[^(daum|hanmail)a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}
과 같은 정규표현식을 써서 검사하면 되는 건가요?
질문3)
^ 패턴문자는 특정 문자열의 첫글자 또는 앞부분의 있는 문자열이 아닌 문장 전체 중에 맨 앞에 있는 첫글자 또는 문장 전체 중에 맨 앞에 있는 문자열을 의미하는 것인가요? 제가
$rep=ereg_replace(^a,"@",$str);
echo nl2br($rep);
코드를 작성해서....
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
라는 문장을 ^a 로 검색해서 @문자로 바꾸면 결과가...
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
와 같이 나올 줄 알았는데...
@bcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
와 같이 나오더라구요. 그래서 질문을 드리는 거예요.
질문4)
질문3)과 거의 같은 질문인데요.
$ 패턴문자는 특정 문자열의 끝글자 또는 끝부분의 있는 문자열이 아닌 문장 전체 중에 맨 끝에 있는 글자 또는 문장 전체 중에 맨 끝에 있는 문자열을 의미하는 것인가요? 마찬가지로
$rep=ereg_replace(e$,"@",$str);
echo nl2br($rep);
코드를 작성해서....
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
라는 문장을 e$ 로 검색해서 @문자로 바꾸면 결과가...
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
와 같이 나올 줄 알았는데,
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcd@
와 같이 나오더라구요. 그래서 이것도 질문을 드리는 겁니당. ^^;;
질문5)
제가 보고 있는 책에 보면...
[RE:[1-9][0-9]*]
패턴에 대해...
'[' 와 'RE:' , 그리고 0을 제외한 하나의 숫자와 하나도 없거나 또는 하나 이상의 0을 포함한 숫자, 그리고, '+ '+ ']' 를 순서대로 포함하는 모든 문자열과 일치한다. 즉, 이는 게시판에 답장글을 올릴 대의 [RE:12]와 같은 패턴을 의미한다. ft 앞에 le 또는 li 가 없거나 하나 이상인 문자열과 일치한다.
예제) [RE:9] , [RE:21]*eionary
라고 나와 있는데요. 설명 내용중에 " ft 앞에 le 또는 li 가 없거나 하나 이상인 문자열과 일치한다. " 는 무엇을 설명하는 건가요?? 해당 패턴과 전혀 상관없는 해설같은데...-_-a
그리고 예제에 "[RE:21]*eionary" 는 해당 패턴과 관련이 있는 건가요?
질문6)
제가 보고 있는 책에...
[*/+?{}.]
패턴에 대한 예제로...
[RE:21]*eionary
가 있는데요. [RE:21]*eionary 예제가 [*/+?{}.] 패턴과 어떤 관련이 있는건가요?
제가 보기에는 전혀 관련이 없는 것으로 생각이 되는데...-_-a
정규표현식에 대해 오늘 처음 접하보니 질문이 좀 많네요. ^^;;
그래도...답변 부탁드려요... 독학하는 사람으로써 물어볼 사람이 없기 때문에 답변이 없으면 참으로 슬퍼집니다...ㅠ_ㅠ
좋은 답변 기다릴께요(__)
그럼 질문 드릴께요...
질문1)
[a-zA-Z0-9] 는 영문 대/소문자 또는 숫자 1글자를 의미하는 것이잖아요. 그렇다면 [a-zA-Z][0-9]는 첫번째 글자는 반/드/시 영문 대/소문자이고, 두번째 글자는 반/드/시 숫자로 이루어진 2개의 글자를 의미하는 것인가요?
질문2)
이번에는 위의 질문 내용이 제가 생각한 것이 맞다는 가정하에 질문을 드릴께요.
이메일 주소의 패턴을 검사할 때,
[-_a-zA-Z][0-9]{3,}@[a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}.[a-zA-Z]{2,} | [-_a-zA-Z][0-9]{3,}@[a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}
와 같은 정규표현식을 써서 검사하면 되는 건가요? 그리고, 위의 정규표현식에서 한메일(다음메일)을 제외시키고자 한다면...
[-_a-zA-Z][0-9]{3,}@[^(daum|hanmail)a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}.[a-zA-Z]{2,} | [-_a-zA-Z][0-9]{3,}@[^(daum|hanmail)a-zA-Z][0-9]{3,}.[a-zA-Z]{2,}
과 같은 정규표현식을 써서 검사하면 되는 건가요?
질문3)
^ 패턴문자는 특정 문자열의 첫글자 또는 앞부분의 있는 문자열이 아닌 문장 전체 중에 맨 앞에 있는 첫글자 또는 문장 전체 중에 맨 앞에 있는 문자열을 의미하는 것인가요? 제가
$rep=ereg_replace(^a,"@",$str);
echo nl2br($rep);
코드를 작성해서....
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
라는 문장을 ^a 로 검색해서 @문자로 바꾸면 결과가...
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
@bcde @bcde @bcde @bcde @bcde @bcde @bcde @bcde
와 같이 나올 줄 알았는데...
@bcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
와 같이 나오더라구요. 그래서 질문을 드리는 거예요.
질문4)
질문3)과 거의 같은 질문인데요.
$ 패턴문자는 특정 문자열의 끝글자 또는 끝부분의 있는 문자열이 아닌 문장 전체 중에 맨 끝에 있는 글자 또는 문장 전체 중에 맨 끝에 있는 문자열을 의미하는 것인가요? 마찬가지로
$rep=ereg_replace(e$,"@",$str);
echo nl2br($rep);
코드를 작성해서....
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
라는 문장을 e$ 로 검색해서 @문자로 바꾸면 결과가...
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@ abcd@
와 같이 나올 줄 알았는데,
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcde
abcde abcde abcde abcde abcde abcde abcde abcd@
와 같이 나오더라구요. 그래서 이것도 질문을 드리는 겁니당. ^^;;
질문5)
제가 보고 있는 책에 보면...
[RE:[1-9][0-9]*]
패턴에 대해...
'[' 와 'RE:' , 그리고 0을 제외한 하나의 숫자와 하나도 없거나 또는 하나 이상의 0을 포함한 숫자, 그리고, '+ '+ ']' 를 순서대로 포함하는 모든 문자열과 일치한다. 즉, 이는 게시판에 답장글을 올릴 대의 [RE:12]와 같은 패턴을 의미한다. ft 앞에 le 또는 li 가 없거나 하나 이상인 문자열과 일치한다.
예제) [RE:9] , [RE:21]*eionary
라고 나와 있는데요. 설명 내용중에 " ft 앞에 le 또는 li 가 없거나 하나 이상인 문자열과 일치한다. " 는 무엇을 설명하는 건가요?? 해당 패턴과 전혀 상관없는 해설같은데...-_-a
그리고 예제에 "[RE:21]*eionary" 는 해당 패턴과 관련이 있는 건가요?
질문6)
제가 보고 있는 책에...
[*/+?{}.]
패턴에 대한 예제로...
[RE:21]*eionary
가 있는데요. [RE:21]*eionary 예제가 [*/+?{}.] 패턴과 어떤 관련이 있는건가요?
제가 보기에는 전혀 관련이 없는 것으로 생각이 되는데...-_-a
정규표현식에 대해 오늘 처음 접하보니 질문이 좀 많네요. ^^;;
그래도...답변 부탁드려요... 독학하는 사람으로써 물어볼 사람이 없기 때문에 답변이 없으면 참으로 슬퍼집니다...ㅠ_ㅠ
좋은 답변 기다릴께요(__)
실험을 해보시면 될 것가지고 이래저래 질문이 너무 많은듯.. (딴지는 아닙니다..?)
simsimdonguk@hotmail.com
msn으로 연락주시면 힘 닿는데 까지 해볼게요.. 넘 많아서 어지럽네요..
정규식은 질색이라.. -_-;