2013-03-25 2 views
0

예를 들어이 문자열이 있습니다.정규식 위치 문자열

$string = 'test***bas'; 

어떻게 별 앞에 문자를 표시 할 수 있습니까?

+2

아무 것도 시도해 보셨습니까? 그렇다면 우리와 공유하십시오. – Maroun

+0

제 생각에이 PHP가 될 수 있을까요? 질문에만 사용할 수있는 정보가 주어지지 않았다는 사실은 확실하지 않습니다. – chrisw

답변

0

가나도 ***, 다음 사용할 수 있습니다 뒤에 위치 무엇을 원하는 경우 :

$string = 'test***bas'; 
$pattern = '/(.+)\*{3}(.+)/'; 
preg_match($pattern, $string, $matches); 

$ 일치하는 결과가 포함됩니다 : [1]가 될 것입니다

$ 일치 "테스트 "
$ [2]"bas "가됩니다

2

다음 패턴

^(.+?)\*\*\* 

는 괄호 연산자를 사용하여 그룹의 일치를 생성합니다. 정규 표현식 테스트에 대한 내용은 http://gskinner.com/RegExr/을 참조하십시오. (온라인으로 다양한 테스트 방법이 있습니다.)

일반 표현식에서 사용하는 언어는 그룹을 캡처하는 다양한 방법을 갖기 때문에 더 이상 사용하지 않는 언어에 대해 더 자세히 설명해야합니다 조언.

전에 당신이 Capture Groups을 사용합니다 정규 표현식을 사용할 수 별표

^(.+?)\*\*\*(.+)$ 
+2

FYI와 마찬가지로 정규 표현식의 마지막 섹션 인'\ * \ * \ *'는'\ * {3}';으로 바뀔 수 있습니다. – npinti

+0

+1 좋은 점, 항상 정규 표현식으로하는 많은 방법 :-) – chrisw

+0

고마워! 그리고? – Bas

2

후 예. 입력 내용과 일치하면 캡처 한 그룹에 액세스하여 출력을 인쇄 할 수 있습니다.