PHP を使用して、スラッシュに続く単語を含め、各単語を大文字にすることでいくつかのタイトルをクリーンアップしたいと考えています。ただし、「and」、「of」、および「the」という単語を大文字にしたくありません。
2 つの文字列の例を次に示します。
会計技術/技術者および簿記
脊椎の整形外科
次のように修正する必要があります。
会計技術/技術者および簿記
脊椎の整形外科
これが私が現在持っているものです。内破と preg_replace_callback を組み合わせる方法がわかりません。
// Will capitalize all words, including those following a slash
$major = implode('/', array_map('ucwords',explode('/',$major)));
// Is supposed to selectively capitalize words in the string
$major = preg_replace_callback("/[a-zA-Z]+/",'ucfirst_some',$major);
function ucfirst_some($match) {
$exclude = array('and','of','the');
if ( in_array(strtolower($match[0]),$exclude) ) return $match[0];
return ucfirst($match[0]);
}
現在、文字列内のすべての単語を大文字にしています。これには、私がしたくない単語も含まれます。