= Atomspec matching issues Outline of what Chimera 1 has in order to spur discussion as to what we want ChimeraX to have. == Wildcards *:: ''global'' [[br]] Matches all atoms in a residue or all residues in a model. It stands alone as a symbol, that is, it cannot be used to match parts of names, such as G* or *A. Examples: {{{#1:12@*}}}, {{{#0,1,2:50-*@CA}}} =:: ''partial'' [[br]] Matches parts of atom or residue names but not parts of residue sequence numbers. Example: {{{@S=}}} ?:: ''single character'' [[br]] Matches single characters within residue or atom names but not single digits within residue sequence numbers. Examples: {{{#2:G??}}}, {{{:fmn@?1}}}, {{{#0@H@H?@H??}}} In attribute tests, using '~' instead of '=' indicates that the right side should be treated as a regular expression instead of a string. Tom Goddard has implemented '*' within ChimeraX as a glob, ''e.g.'' {{{sel ::asym_detail=*11}}} selects every residue with attribute asym_details (custom attribute made by IHM reader) value that ends in “11”. == Case sensitivity Comes into play for attribute value tests (atom/residue name tests already case insensitive, and chain ID tests "partially" case insensitive). Attribute names always case sensitive. In Chimera1, attribute values are case insensitive if the test is '=' but case sensitive if the test is '=='.