みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FMS19とFMP19でWindows環境、ServerはMACMini(Ventura13.1)の構成です。
フィールドのなかに“A”があるものを抽出したいのです。フィールドには“a”
もあります。大文字、小文字を区別したいのです。
フィールドは日本語ではなくUnicodeにしています。
そのフィールドの検索モードからでは、大文字、小文字が区別できています。
ところが、スクリプトの中でAを抽出すると大文字、小文字の区別ができません。実際には、
If[(PatternCount(フィールド名;“A”)]
としています
Offline
関数はそれぞれ区別するかしないか決まりがあります。
https://help.claris.com/ja/pro-help/con … count.html
「この関数では、大文字と小文字は区別されません。」
抽出というより、「Aが含まれるかどうか判定したい」ですね。
Substitute()なら区別しますから、””に置換して元の文字列と比べるとかで。
Filter()の方が簡単ですね...
ありがとうございます。この関数は大文字、小文字の区別ができないのですね。わかりました。
ほかの文字で置き換えるというのはちょっとまずいです。
Offline
置換するというのは、フィールドのデータを変えるのではなくIf文の中でPatternCountの代りに使うので、何もまずいことはありません。
#3で書きましたが、置換するより
If「Filter("A";フィールド)<>""」
の方が簡単でした。
ありがとうございます。Filterで大文字、小文字判別できました。フィールドはUnicodeにしているのですが、やはりUnicodeにしておく必要はあるのでしょうか。
Offline
そのフィールドで使われるテキストが、
日本語、英語のフォントのみなら、
索引Unicodeの意味はないんじゃないかな。。
Offline
関数の動作には影響ないと思いますが、「そのフィールドの検索モードからでは、大文字、小文字が区別できています。」ができなくなるのでは。
ありがとうございます。検証してみます。
Offline
Pages: 1
[ Generated in 0.011 seconds, 9 queries executed - Memory usage: 513.94 KiB (Peak: 518.84 KiB) ]