안녕하세요. preg_match_all
으로 확인하고 싶습니다. 모음이 모음과 자음으로 구성되어 있으면 확인하고 싶습니다. 구조는 consonant|vowel|consonant|vowel
이어야합니다. 예를 들어preg_match_all 특수 구조 확인
:
xaxa
xuxu
baba
nunu
안녕하세요. preg_match_all
으로 확인하고 싶습니다. 모음이 모음과 자음으로 구성되어 있으면 확인하고 싶습니다. 구조는 consonant|vowel|consonant|vowel
이어야합니다. 예를 들어preg_match_all 특수 구조 확인
:
xaxa
xuxu
baba
nunu
이것은 내 첫 번째 본능 모음 다음하지-모음과 일치하는 동안, 그것은 또한 다른 모든 것들과 일치 때문에 조금 까다 롭습니다. 그런 다음 영어로 규칙이 있습니다. y
은 모음이되는 경우가 있습니다.
이것은 당신을 거기에 데려다 줄 것입니다.
$string = "xaxa xuxu baba nunu nnnn";
$vowels = 'aeiouy';
$consonants = 'bcdfghjklmnpqrstvwxyz';
$pattern = "!([$consonants][$vowels][$consonants][$vowels])!i";
$found = preg_match_all($pattern,$string,$matches);
foreach ($matches[0] as $value){
echo $value."<br />";
}
영어에 대한 이상한 점은 yyyy
과 일치합니다. y
을 모음으로 사용하지 않으려면 그룹에서 제거 할 수 있습니다.
$vowels = 'aeiou';
안녕하세요. 도움을 주셔서 감사합니다. 자음을 설정하지 않아도됩니까? 나는 그것을 시도했지만 아무것도 찾지 못했다. 그러나 나는 그것을 볼 수있다. 아니면 일치하는 항목 만 표시 할 수 있습니까? – TrivoXx
첫 번째 답변은 글자가 아닌 내용과 일치했습니다. –
아, 이제 다음과 같은 대답을 얻을 수 있습니다 : 배열 ([0] => 배열 ([0] => xaxa [1] => xuxu [2] => baba [3] => nunu) [1] = > Array ([0] => xaxa [1] => xuxu [2] => baba [3] => nunu)) 그러나 새로운 줄마다 xaxa, xuxu를 갖고 싶습니다. negativ 일치 나는보고 싶지 않아요. – TrivoXx
이 스크립트는 각 단어에 대한 자음 교류 모음을/확인하고는 반환
이$subject = <<<LOD
abacagopa
titot
blux
apocop
pipo
laek
LOD;
$pattern = '~
# definitions
(?(DEFINE)(?<vowel>[aeiou]))
(?(DEFINE)(?<consonant>[bcdfghjklmnpqrstvwyz]))
# pattern
\b\g<vowel>?+(?>\g<consonant>\g<vowel>)*+\g<consonant>?+\b
~ix';
echo preg_replace($pattern, '$0<br/>', $subject);
당신이 어려움을 겪고 어떤 부분? 정규 표현식에 대한 설명서를 읽었습니까? –