2014-12-17 2 views
0

현재 문장이나 단락을 시작할 때를 제외하고 단어를 매치 할 방법을 찾기 위해 머리를 긁어보고 있습니다. regex (preg_replace) 문장/단락을 시작하는 부분을 제외하고 단어 일치

나는 내가 그것을 지금까지 내가

preg_replace('/Word\b/','word',$text); 

사람이 함께 도와주세요 수 있습니다

문장을 시작하면 그렇다, 세트 단어의 시작을 소문자로해야 할 많은 양의 텍스트가 문장을이 정말 당신이 문장을 정의하는 방법에 따라 달라집니다

감사

+1

무엇을 찾으시겠습니까? 몇 가지 예를 만드십시오! – Rizier123

+1

아주 명확하지 않습니다. 입력과 예상 출력을 보여줄 수 있습니까? – HamZa

답변

1

을 시작 제외 패턴.

preg_replace('/([^.?!]\s*)Word\b/','$1word',$text); 

이렇게하면 단어가 일부 문장 부호 바로 뒤에 오지 않도록 할 수 있습니다. 또한 단락의 시작 부분과 일치 할 수 없다는 것을 의미합니다. 단락의 앞부분에 구두점이 아닌 문자와 일치해야하기 때문입니다.

+0

완벽한 thats 그냥 내가 뭘 감사해야! – GafferG

+0

나는 생각하기에's *'를's +'로 바꾸어야한다고 생각하지만, 그렇다고해도 그것이 생각하는대로하지는 않을 것입니다. – pguardiario

+0

마지막 구두점 이후에 공백이 없거나 (단락 시작 부분에) 공백이 없기 때문에 '\ s *'이어야합니다. – cbreezier