preg_match를 쓰고 있는데 궁금한 점이 있습니다.

· 2013-03-17 (일) 00:47:27 · 1066 · 2
preg_match(' A (.*) B ', $source, $result);

echo $result[1];
이 경우 A가 처음 나오는 부분부터 B까지가 출력되는데 문제는 B는 하나밖에 없지만 A는 여러개가 있다는 겁니다.
그래서 결과값은 A가 처음 나오는 부분부터 B까지의 내용이므로 그 결과 값에는 또다른 A들이 계속 나오거든요.

B를 기준으로 B의 앞에 가장 가까이 있는 A까지만 찾고 싶으면 어떻게 해야할까요?
조언 부탁드립니다.
|

댓글 2개

$source 문자열을 예를 하나 보여주었면 더 좋을텐데요

$source="A11111AsdfghA3333A9999B12345678";
preg_match("/A([^A]+)B/", $source, $result);

이렇게 하면 9999가 나옵니다
2013-03-24 (일) 20:34:49
감사합니다 균이님. 확인이 너무 늦었네요.
잘 알지못하고 매번 쓰던것만 쓰다보니 조금 상황이 바뀌면 해결이 안되네요.
감사합니다. 하나 또 배워갑니다.
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

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

+
제목 글쓴이 날짜 조회
13-03-17 조회 2,207
13-03-17 조회 1,732
13-03-17 조회 826
13-03-17 조회 2,863
13-03-17 조회 1.4만
13-03-17 조회 1,964
13-03-17 조회 1,067
13-03-16 조회 1,888
13-03-16 조회 1,621
13-03-16 조회 1,138
13-03-16 조회 1,624
13-03-16 조회 1,695
13-03-16 조회 1,059
13-03-16 조회 1,839
13-03-16 조회 1,040
13-03-16 조회 1,021
13-03-15 조회 4,189
13-03-15 조회 1,600
13-03-15 조회 1,806
13-03-15 조회 905