複雑な質問がありますが、皆さんにとっては非常に簡単かもしれません。
私は
NSMutableString = "This is spinach";
私は3つのブール値を持っています。コードは無視してください。適切な構文、関数を使用していません。
if (boolA) appendstring"and apples";
if (boolB) appendstring"and mangoes";
if (boolC) appendstring"and oranges";
すべてのブール値は果物に対応します。BOOL aが本当なら、私もマンゴーを持っていると言ってください!
とにかく、私の目標は、対応するブール値が真であり、非常に特殊な方法で存在する場合に、他のフルーツを追加して最初の文字列をフォーマットすることです。
BOOL Aがtrueの場合のシナリオは次のとおりです。文字列は、「これはほうれん草とマンゴーです」である必要があります。マンゴーに「and」が追加されていることに注意してください。最後に追加してすぐに追加できます。
しかし、問題は、すべてのブール値が真である場合です。ひもは「ほうれん草とりんごとマンゴーとオレンジです」のようになり、これが実現できます。
「これはほうれん草とリンゴ、マンゴー、オレンジです」のように見せたいのですが、直後に「And」を1回だけ追加し、マンゴーとオレンジの前にコンマ「、」を追加したいことに注意してください。
私はおそらくこれを得ることができますが、多くのチェックと多くの不要なif/elseステートメントがあります。
私は私がjusターンできると思っていました
"This is spinach and apples and mangoes and oranges" into
"This is spinach and apples , mangoes , oranges".
これを行うために使用できる関数があると思います。2番目と3番目の「と」を「、 」に置き換えるようなものです。
このような関数とその実行例を知っていただけませんか。これは、当時のCPPでは可能だったと思います。strpos()を使用してcharの場所を取得し、特定の数値の後に何かを実行して文字列を置き換えます。または、もっと良い方法があるかどうか教えてください。