Jump to content
Claris Engage 2025 - March 25-26 Austin Texas ×

This topic is 4842 days old. Please don't post here. Open a new topic instead.

Recommended Posts

Posted

I have attached a simple file. If I search for A...Z in these records, it is not finding two records that I thought it should find (I have changed these two records' text to red).

Can anyone explain why these two records would not be found in this script? I keep trying to pin down the theory and I just don't get it. :idunno:

AlphaRange.zip

Posted

Actually it was the other text which was throwing the results.

It is working as I would have expected ... finding up to Z but not including words that begin with Z(anything). To find all alpha, we would search for A...ZZ to include all Z entries. It was the test which was flawed. :crazy2:

Posted

Hi joaocarlo,

Thank you for the suggestion!

One thing ... if you search for "A*...Z*" then it does not find records with single 'A' so I would suggest instead "A...Z*". I would be inclined to use "≥a" instead of a range but they both work better than "A...ZZ" (what if, for once, a word began with 'ZZZ')? I would probably use "<a" to find words beginning with numbers.

Regardless, there are records which could escape all three of these searches; characters such as dash, period, equal, dollar. It would then be business decision where these characters should be grouped. One might need to perform a search and then show omitted to get the desired record set.

Interesting stuff! :laugh2:

UPDATE: And, knock on wood, there may be other issues regarding these types of searches that I am completely missing. I have no idea, for instance, what would happen with lower ASCII or other types of invalid characters. I would assume they would be ignored as well because they couldn't be indexed (thinking out loud) ...

  • Like 1
Posted

if you search for "A*...Z*" then it does not find records with single 'A'

That's weird. The first wildcard is of course redundant, but it shouldn't make a difference. Interestingly enough, it does work as expected if you enclose the "A" in quotes.

Posted

I was surprised as well. I am unable to replicate your suggestion of surrounding the A with quotes. I used "A" & "*...zzzzz". Would you tell me what you used for your test?

Another surprise is search for "*...zzzzz". It finds everything except for special characters mentioned above. This makes no sense either, since these characters sort before alpha and appear in the index. In fact, $ appears AFTER .999 in index and .999 is found and dollar isn't. "≤zzzzzzz" produces the same results.

And a rhetorical question, I suppose but: if you have all records showing on a text field and sort it ascending, shouldn't the order of the entries be the same as the index? Take equal, dash, underline and period, sort them, then compare.

Sort produces: - = _ .

Index produces: _ - . =

I am unsure how these inconsistencies may affect our work but I think it important to know about them.

Posted

I am unable to replicate your suggestion of surrounding the A with quotes. I used "A" & "*...zzzzz". Would you tell me what you used for your test?

I did this manually. if you want to script this, you must set your field to =

"\"A\"...z*"


 

or =

 


Quote ( "A" ) & "...z*"

The other thing is that even with a range find, Filemaker still searches for words that begin with… and no word can begin with $ for example, since it is a word delimiter.

Posted

Word delimiters! Yes! You can view it by [CTRL-I] and then 'show individual words' which will take $minus and turn it to $minus (if indexing is set to auto or all); delimiters drop off.

A relationship based upon 'field < a' relates and includes records beginning with (or only with) delimiters. That's about the only way I've used alpha ranges.

Posted

A relationship based upon 'field < a' relates and includes records beginning with (or only with) delimiters.

Well, I'd be the last one to claim it's all perfectly consistent. But keep in mind that a relationship is paragraph-based, unlike a (default) find which is word-based.

Posted

I agreee with you LaRetta… "a*...z*" is not the best away…

I try find with "≥a" with some words and single characters. the results are:

A,Æ, Albert,Américo, Antonio, B, Bandeiras, Bento, Berthold, C, Charles, D, E, F, , G, H, I, J, João, K, L, M, N, O, P, Q, R, S, Silva, T, U, V, W, Wrestling, X, Y, Ypsilon, Z, Zacarias, Zest, Zeus, µ

and omit the next: 123456, 2456, €, &, @, =, ?, #, ⁄, }, {, ≈, ©, ∏, ‡

Sorry my english,… LOL

This topic is 4842 days old. Please don't post here. Open a new topic instead.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.