SMARTS Examples
Table of Contents
1. Introduction
2. Functional Groups by Element
2. Gross Structual Features
4. Meta-SMARTS
5. Electron & Proton Features
6. Breakdown of Complex SMARTS
7. Interesting Example SMARTS
1. Introduction
When using SMARTS to do searches, it is often helpful to have
example queries from which to start. This document contains
many potentially useful example SMARTS which may be used to
perform searches. templates, examples and ideas.
These SMARTS have been tested, but they may still contain errors.
Please send corrections, improvements, additions, and questions to
support@daylight.com.
2. Functional Groups by Element
C
alkane
- Alkyl Carbon
- [CX4]
alkene (-ene)
- Allenic Carbon
- [$([CX2](=C)=C)]
- Vinylic Carbon
- [$([CX3]=[CX3])]
- Ethenyl carbon
alkyne (-yne)
- Acetylenic Carbon
- [$([CX2]#C)]
arene (Ar , aryl-, aromatic hydrocarbons)
- Arene
- c
C & O
carbonyl
- Carbonyl group. Low specificity
- [CX3]=[OX1]
- Hits carboxylic acid, ester, ketone, aldehyde, carbonic
acid/ester,anhydride, carbamic acid/ester, acyl halide, amide.
- Carbonyl group
- [$([CX3]=[OX1]),$([CX3+]-[OX1-])]
- Hits either resonance structure
- Carbonyl with Carbon
- [CX3](=[OX1])C
- Hits aldehyde, ketone, carboxylic acid (except formic), anhydride
(except formic), acyl halides (acid halides). Won't hit carbamic
acid/ester, carbonic acid/ester.
- Carbonyl with Nitrogen.
- [OX1]=CN
- Hits amide, carbamic acid/ester, poly peptide
- Carbonyl with Oxygen.
- [CX3](=[OX1])O
- Hits ester, carboxylic acid, carbonic acid or ester, carbamic acid
or ester, anhydride Won't hit aldehyde or ketone.
- Acyl Halide
- [CX3](=[OX1])[F,Cl,Br,I]
- acid halide, -oyl halide
- Aldehyde
- [CX3H1](=O)[#6]
- -al
- Anhydride
- [CX3](=[OX1])[OX2][CX3](=[OX1])
- Amide
- [NX3][CX3](=[OX1])[#6]
- -amide
- Amidinium
- [NX3][CX3]=[NX3+]
- Carbamate.
- [NX3,NX4+][CX3](=[OX1])[OX2,OX1-]
- Hits carbamic esters, acids, and zwitterions
- Carbamic ester
- [NX3][CX3](=[OX1])[OX2H0]
- Carbamic acid.
- [NX3,NX4+][CX3](=[OX1])[OX2H,OX1-]
- Hits carbamic acids and zwitterions.
- Carboxylate Ion.
- [CX3](=O)[O-]
- Hits conjugate bases of carboxylic, carbamic, and carbonic acids.
- Carbonic Acid or Carbonic Ester
- [CX3](=[OX1])(O)O
- Carbonic Acid, Carbonic Ester, or combination
- Carbonic Acid or Carbonic Acid-Ester
- [CX3](=[OX1])([OX2])[OX2H,OX1H0-1]
- Hits acid and conjugate base. Won't hit carbonic acid diester
- Carbonic Ester (carbonic acid diester)
- C[OX2][CX3](=[OX1])[OX2]C
- Won't hit carbonic acid or combination carbonic acid/ester
- Carboxylic acid
- [CX3](=O)[OX2H1]
- -oic acid, COOH
- Carboxylic acid or conjugate base.
- [CX3](=O)[OX1H0-,OX2H1]
- Cyanamide
- [NX3][CX2]#[NX1]
- Ester Also hits anhydrides
- [#6][CX3](=O)[OX2H0][#6]
- won't hit formic anhydride.
- Ketone
- [#6][CX3](=O)[#6]
- -one
ether
- Ether
- [OD2]([#6])[#6]
H
hydrogen atoms
- Hydrogen Atom
- [H]
- Hits SMILES that are hydrogen atoms: [H+] [2H] [H][H]
- Not a Hydrogen Atom
- [!#1]
- Hits SMILES that are not hydrogen atoms.
- Proton
- [H+]
- Hits positively charged hydrogen atoms: [H+]
hydrogen count
- Mono-Hydrogenated Cation
- [+H]
- Hits atoms that have a positive charge and exactly one attached hydrogen: F[C+](F)[H]
- Not Mono-Hydrogenated
- [!H] or [!H1]
- Hits atoms that don't have exactly one attached hydrogen.
N
amide see carbonyl
mine (-amino)
- Primary or secondary amine, not amide.
- [NX3;H2,H1;!$(NC=O)]
- Not ammonium ion (N must be 3-connected), not ammonia (H count can't be 3). Primary or secondary is specified by N's H-count (H2 & H1 respectively). Also note that "&" (and) is the dafault opperator and is higher precedence that "," (or), which is higher precedence than ";" (and). Will hit cyanamides and thioamides
- Enamine
- [NX3][CX3]=[CX3]
- Primary amine, not amide.
- [NX3;H2;!$(NC=[!#6]);!$(NC#[!#6])][#6] Not amide (C not double bonded to a hetero-atom), not ammonium ion (N must be 3-connected), not ammonia (N's H-count can't be 3), not cyanamide (C not triple bonded to a hetero-atom)
- Two primary or secondary amines
- [NX3;H2,H1;!$(NC=O)].[NX3;H2,H1;!$(NC=O)]
- Here we use the disconnection symbol (".") to match two separate unbonded identical patterns.
- Enamine or Aniline Nitrogen
- [NX3][$(C=C),$(cc)]
amino acids
- Generic amino acid: low specificity.
- [NX3,NX4+][CX4H]([*])[CX3](=[OX1])[O,N]
- For use w/ non-standard a.a. search. hits pro but not gly. Hits acids and conjugate bases. Hits single a.a.s and specific residues w/in polypeptides (internal, or terminal).
- Dipeptide group. generic amino acid: low specificity.
- [NX3H2,NH3X4+][CX4H]([*])[CX3](=[OX1])[NX3,NX4+][CX4H]([*])[CX3](=[OX1])[OX2H,OX1-]
- Won't hit pro or gly. Hits acids and conjugate bases.
- Amino Acid
- [$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H]([*])[CX3](=[OX1])[OX2H,OX1-,N]
- Replace * w/ a specific a.a. side chain from the 18_standard_side_chains list to hit a specific standard a.a. Won't work with Proline
or Glycine, they have their own SMARTS (see side chain list). Hits acids and conjugate bases. Hits single a.a.s and specific residues w/i
n polypeptides (internal, or terminal). {e.g. usage: Alanine side chain is [CH3X4] . Search is [$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H]([
CH3X4])[CX3](=[OX1])[OX2H,OX1-,N]}
amino acid side chains
- Alanine side chain
- [CH3X4]
- Arginine side chain.
- [CH2X4][CH2X4][CH2X4][NHX3][CH0X3](=[NH2X3+,NHX2+0])[NH2X3]
- Hits acid and conjugate base.
- Aspargine side chain.
- [CH2X4][CX3](=[OX1])[NX3H2]
- Also hits Gln side chain when used alone.
- Aspartate (or Aspartic acid) side chain.
- [CH2X4][CX3](=[OX1])[OH0-,OH]
- Hits acid and conjugate base. Also hits Glu side chain when used alone.
- Cysteine side chain.
- [CH2X4][SX2H,SX1H0-]
- Hits acid and conjugate base
- Glutamate (or Glutamic acid) side chain.
- [CH2X4][CH2X4][CX3](=[OX1])[OH0-,OH]
- Hits acid and conjugate base.
- Glycine
- [$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H2][CX3](=[OX1])[OX2H,OX1-,N])]
- Histidine side chain.
- [CH2X4][#6X3]1:[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:[#6X3H]:
[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:[#6X3H]1
- Hits acid & conjugate base for either Nitrogen. Note that the Ns can be either ([(Cationic 3-connected with one H) or (Neutral
2-connected without any Hs)] where there is a second-neighbor who is [3-connected with one H]) or (3-connected with one H).
- Isoleucine side chain
- [CHX4]([CH3X4])[CH2X4][CH3X4]
- Leucine side chain
- [CH2X4][CHX4]([CH3X4])[CH3X4]
- Lysine side chain.
- [CH2X4][CH2X4][CH2X4][CH2X4][NX4+,NX3+0]
- Acid and conjugate base
- Methionine side chain
- [CH2X4][CH2X4][SX2][CH3X4]
- Phenylalanine side chain
- [CH2X4][cX3]1[cX3H][cX3H][cX3H][cX3H][cX3H]1
- Proline
- [$([NX3H,NX4H2+]),$([NX3](C)(C)(C))]1[CX4H]([CH2][CH2][CH2]1)[CX3](=[OX1])[OX2H,OX1-,N]
- Serine side chain
- [CH2X4][OX2H]
- Thioamide
- [NX3][CX3]=[SX1]
- Threonine side chain
- [CHX4]([CH3X4])[OX2H]
- Tryptophan side chain
- [CH2X4][cX3]1[cX3H][nX3H][cX3]2[cX3H][cX3H][cX3H][cX3H][cX3]12
- Tyrosine side chain.
- [CH2X4][cX3]1[cX3H][cX3H][cX3]([OHX2,OH0X1-])[cX3H][cX3H]1
- Acid and conjugate base
- Valine side chain
- [CHX4]([CH3X4])[CH3X4]
- Alanine side chain
- [CH3X4]
- Arginine side chain.
- [CH2X4][CH2X4][CH2X4][NHX3][CH0X3](=[NH2X3+,NHX2+0])[NH2X3]
- Hits acid and conjugate base.
- Aspargine side chain.
- [CH2X4][CX3](=[OX1])[NX3H2]
- Also hits Gln side chain when used alone.
- Aspartate (or Aspartic acid) side chain.
- [CH2X4][CX3](=[OX1])[OH0-,OH]
- Hits acid and conjugate base. Also hits Glu side chain when used alone.
- Cysteine side chain.
- [CH2X4][SX2H,SX1H0-]
- Hits acid and conjugate base
- Glutamate (or Glutamic acid) side chain.
- [CH2X4][CH2X4][CX3](=[OX1])[OH0-,OH]
- Hits acid and conjugate base.
- Glycine
- N[CX4H2][CX3](=[OX1])[O,N]
- Histidine side chain.
- [CH2X4][#6X3]1:[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:[#6X3H]:
[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:[#6X3H]1
- Hits acid & conjugate base for either Nitrogen. Note that the Ns can be either ([(Cationic 3-connected with one H) or (Neutral
2-connected without any Hs)] where there is a second-neighbor who is [3-connected
- Isoleucine side chain
- [CHX4]([CH3X4])[CH2X4][CH3X4]
- Leucine side chain
- [CH2X4][CHX4]([CH3X4])[CH3X4]
- Lysine side chain.
- [CH2X4][CH2X4][CH2X4][CH2X4][NX4+,NX3+0]
- Acid and conjugate base
- Methionine side chain
- [CH2X4][CH2X4][SX2][CH3X4]
- Phenylalanine side chain
- [CH2X4][cX3]1[cX3H][cX3H][cX3H][cX3H][cX3H]1
- Proline
- N1[CX4H]([CH2][CH2][CH2]1)[CX3](=[OX1])[O,N]
- Serine side chain
- [CH2X4][OX2H]
- Threonine side chain
- [CHX4]([CH3X4])[OX2H]
- Tryptophan side chain
- [CH2X4][cX3]1[cX3H][nX3H][cX3]2[cX3H][cX3H][cX3H][cX3H][cX3]12
- Tyrosine side chain.
- [CH2X4][cX3]1[cX3H][cX3H][cX3]([OHX2,OH0X1-])[cX3H][cX3H]1
- Acid and conjugate base
- Valine side chain
- [CHX4]([CH3X4])[CH3X4]
azide (-azido)
- Azide group.
- [$(*-[NX2-]-[NX2+]#[NX1]),$(*-[NX2]=[NX2+]=[NX1-])]
- Hits any atom with an attached azide.
- Azide ion.
- [$([NX1-]=[NX2+]=[NX1-]),$([NX1]#[NX2+]-[NX1-2])]
- Hits N in azide ion
azo
- Nitrogen.
- [#7]
- Nitrogen in N-containing compound. aromatic or aliphatic. Most general interpretation of "azo"
- Azo Nitrogen. Low specificity.
- [NX2]=N
- Hits diazene, azoxy and some diazo structures
- Azo Nitrogen.diazene
- [NX2]=[NX2]
- (diaza alkene)
- Azoxy Nitrogen.
- [$([NX2]=[NX3+]([O-])[#6]),$([NX2]=[NX3+0](=[O])[#6])]
- Diazo Nitrogen
- [$([#6]=[N+]=[N-]),$([#6-]-[N+]#[N])]
- Azole.
- [$([nr5]:[nr5,or5,sr5]),$([nr5]:[cr5]:[nr5,or5,sr5])]
- 5 member aromatic heterocycle w/ 2double bonds. contains N & another non C (N,O,S) subclasses are furo-, thio-, pyrro- (replace
CH o' furfuran, thiophene, pyrrol w/ N)
hydrazine
- Hydrazine H2NNH2
- [NX3][NX3]
hydrazone
- Hydrazone C=NNH2
- [NX3][NX2]=[*]
imine
- Substituted imine
- [CX3;$([C]([#6])[#6]),$([CH][#6])]=[NX2][#6]
- Schiff base
- Substituted or un-substituted imine
- [$([CX3]([#6])[#6]),$([CX3H][#6])]=[$([NX2][#6]),$([NX2H])]
- Iminium
- [NX3+]=[CX3]
imide
- Unsubstituted dicarboximide
- [CX3](=[OX1])[NX3H][CX3](=[OX1])
- Substituted dicarboximide
- [CX3](=[OX1])[NX3H0]([#6])[CX3](=[OX1])
- Dicarboxdiimide
- [CX3](=[OX1])[NX3H0]([NX3H0]([CX3](=[OX1]))[CX3](=[OX1]))[CX3](=[OX1])
nitrate
- Nitrate group
- [$([NX3](=[OX1])(=[OX1])O),$([NX3+]([OX1-])(=[OX1])O)]
- Also hits nitrate anion
- Nitrate Anion
- [$([OX1]=[NX3](=[OX1])[OX1-]),$([OX1]=[NX3+]([OX1-])[OX1-])]
nitrile
- Nitrile
- [NX1]#[CX2]
- Isonitrile
- [CX1-]#[NX2+]
nitro
- Nitro group.
- [$([NX3](=O)=O),$([NX3+](=O)[O-])][!#8] Hits both forms.
- Two Nitro groups
- [$([NX3](=O)=O),$([NX3+](=O)[O-])][!#8].[$([NX3](=O)=O),$([NX3+](=O)[O-])][!#8]
nitroso
- Nitroso-group
- [NX2]=[OX1]
n-oxide
- N-Oxide
- [$([#7+][OX1-]),$([#7v5]=[OX1]);!$([#7](~[O])~[O]);!$([#7]=[#7])]
- Hits both forms. Won't hit azoxy, nitro, nitroso,or nitrate.
O
hydroxyl (includes alcohol, phenol)
- Hydroxyl
- [OX2H]
- Hydroxyl in Alcohol
- [#6][OX2H]
- Hydroxyl in Carboxylic Acid
- [OX2H][CX3]=[OX1]
- Hydroxyl in H-O-P-
- [OX2H]P
- Enol
- [OX2H][#6X3]=[#6]
- Phenol
- [OX2H][cX3]:[c]
- Enol or Phenol
- [OX2H][$(C=C),$(cc)]
- Hydroxyl_acidic
- [$([OH]-*=[!#6])]
- An acidic hydroxyl is a hydroxyl bonded to an atom which is multiply bonded to a hetero atom, this includes carboxylic, sulphur, phosphorous,
halogen and nitrogen oxyacids.
peroxide
- Peroxide groups.
- [OX2,OX1-][OX2,OX1-]
- Also hits anions.
P
phosphoric compounds
- Phosphoric_acid groups.
- [$(P(=[OX1])([$([OX2H]),$([OX1-]),$([OX2]P)])([$([OX2H]),$([OX1-]),$([OX2]P)])[$([OX2H]),$([OX1-]),$([OX2]P)]),$([P+]([OX1-])([$([OX2H]),$([OX1-]),$([OX2]P)])([$([OX2H]),$([OX1-]),$([OX2]P)])[$([OX2H]),$([OX1-]),$([OX2]P)])]
- Hits both depiction forms. Hits orthophosphoric acid and polyphosphoric acid anhydrides. Doesn't hit monophosphoric acid anhydride
esters (including acidic mono- & di- esters) but will hit some polyphosphoric acid anhydride esters (mono- esters on pyrophosphoric acid
and longer, di- esters on linear triphosphoric acid and longer).
- Phosphoric_ester groups.
- [$(P(=[OX1])([OX2][#6])([$([OX2H]),$([OX1-]),$([OX2][#6])])[$([OX2H]),$([OX1-]),$([OX2][#6]),$([OX2]P)]),$([P+]([OX1-])([OX2][#6])([$([OX2H]),$([OX1-]),$([OX2][#6])])[$([OX2H]),$([OX1-]),$([OX2][#6]),$([OX2]P)])]
- Hits both depiction forms. Doesn't hit non-ester phosphoric_acid groups.
S
thio groups ( thio-, thi-, sulpho-, mercapto- )
- Carbo-Thiocarboxylate
- [S-][CX3](=S)[#6]
- Carbo-Thioester
- S([#6])[CX3](=O)[#6]
- Thio analog of carbonyl
- [#6X3](=[SX1])([!N])[!N]
- Where S replaces O. Not a thioamide.
- Thiol, Sulfide or Disulfide Sulfur
- [SX2]
- Thiol
- [#16X2H]
- Sulfur with at-least one hydrogen.
- [#16!H0]
- Thioamide
- [NX3][CX3]=[SX1]
sulfide
- Sulfide
- [#16X2H0]
- -alkylthio Won't hit thiols. Hits disulfides.
- Mono-sulfide
- [#16X2H0][!#16]
- alkylthio- or alkoxy- Won't hit thiols. Won't hit disulfides.
- Di-sulfide
- [#16X2H0][#16X2H0]
- Won't hit thiols. Won't hit mono-sulfides.
- Two Sulfides
- [#16X2H0][!#16].[#16X2H0][!#16]
- Won't hit thiols. Won't hit mono-sulfides. Won't hit disulfides.
sulfinate
- Sulfinate
- [$([#16X3](=[OX1])[OX2H0]),$([#16X3+]([OX1-])[OX2H0])]
- Won't hit Sulfinic Acid. Hits Both Depiction Forms.
- Sulfinic Acid
- [$([#16X3](=[OX1])[OX2H,OX1H0-]),$([#16X3+]([OX1-])[OX2H,OX1H0-])]
- Won't hit substituted Sulfinates. Hits Both Depiction Forms.
Hits acid and conjugate base (sulfinate).
sulfone
- Sulfone. Low specificity.
- [$([#16X4](=[OX1])=[OX1]),$([#16X4+2]([OX1-])[OX1-])]
- Hits all sulfones, including heteroatom-substituted sulfones: sulfonic acid, sulfonate, sulfuric acid mono- & di- esters, sulfamic
acid, sulfamate, sulfonamide... Hits Both Depiction Forms.
- Sulfone. High specificity.
- [$([#16X4](=[OX1])(=[OX1])([#6])[#6]),$([#16X4+2]([OX1-])([OX1-])([#6])[#6])]
- Only hits carbo- sulfones (Won't hit herteroatom-substituted molecules). Hits Both Depiction Forms.
- Sulfonic acid. High specificity.
- [$([#16X4](=[OX1])(=[OX1])([#6])[OX2H,OX1H0-]),$([#16X4+2]([OX1-])([OX1-])([#6])[OX2H,OX1H0-])]
- Only hits carbo- sulfonic acids (Won't hit herteroatom-substituted molecules).
Hits acid and conjugate base. Hits Both Depiction Forms. Hits Arene sulfonic acids.
- Sulfonate
- [$([#16X4](=[OX1])(=[OX1])([#6])[OX2H0]),$([#16X4+2]([OX1-])([OX1-])([#6])[OX2H0])]
- (sulfonic ester) Only hits carbon-substituted sulfur
(Oxygen may be herteroatom-substituted). Hits Both Depiction Forms.
- Sulfonamide.
- [$([#16X4]([NX3])(=[OX1])(=[OX1])[#6]),$([#16X4+2]([NX3])([OX1-])([OX1-])[#6])]
- Only hits carbo- sulfonamide. Hits Both Depiction Forms.
- Carbo-azosulfone
- [SX4](C)(C)(=O)=N
- Partial N-Analog of Sulfone
- Sulfonamide
- [$([SX4](=[OX1])(=[OX1])([!O])[NX3]),$([SX4+2]([OX1-])([OX1-])([!O])[NX3])]
- (sulf drugs) Won't hit sulfamic acid or sulfamate. Hits Both Depiction Forms.
sulfoxide
- Sulfoxide Low specificity.
- [$([#16X3]=[OX1]),$([#16X3+][OX1-])]
- ( sulfinyl, thionyl ) Analog of carbonyl where S replaces C.
Hits all sulfoxides, including heteroatom-substituted sulfoxides,
dialkylsulfoxides carbo-sulfoxides, sulfinate, sulfinic acids...
Hits Both Depiction Forms. Won't hit sulfones.
- Sulfoxide High specificity
- [$([#16X3](=[OX1])([#6])[#6]),$([#16X3+]([OX1-])([#6])[#6])]
- (sulfinyl , thionyl) Analog of carbonyl where S replaces C. Only hits carbo-sulfoxides
(Won't hit herteroatom-substituted molecules). Hits Both Depiction Forms. Won't hit sulfones.
sulfate
- Sulfate
- [$([#16X4](=[OX1])(=[OX1])([OX2H,OX1H0-])[OX2][#6]),$([#16X4+2]([OX1-])([OX1-])([OX2H,OX1H0-])[OX2][#6])]
- (sulfuric acid monoester) Only hits when oxygen is carbon-substituted.
Hits acid and conjugate base. Hits Both Depiction Forms.
- Sulfuric acid ester (sulfate ester) Low specificity.
- [$([SX4](=O)(=O)(O)O),$([SX4+2]([O-])([O-])(O)O)]
- Hits sulfuric acid, sulfuric acid monoesters (sulfuric acids) and diesters (sulfates).
Hits acid and conjugate base. Hits Both Depiction Forms.
- Sulfuric Acid Diester.
- [$([#16X4](=[OX1])(=[OX1])([OX2][#6])[OX2][#6]),$([#16X4](=[OX1])(=[OX1])([OX2][#6])[OX2][#6])]
- Only hits when oxygen is carbon-substituted. Hits Both Depiction Forms.
sulfamate
- Sulfamate.
- [$([#16X4]([NX3])(=[OX1])(=[OX1])[OX2][#6]),$([#16X4+2]([NX3])([OX1-])([OX1-])[OX2][#6])]
- Only hits when oxygen is carbon-substituted. Hits Both Depiction Forms.
- Sulfamic Acid.
- [$([#16X4]([NX3])(=[OX1])(=[OX1])[OX2H,OX1H0-]),$([#16X4+2]([NX3])([OX1-])([OX1-])[OX2H,OX1H0-])]
- Hits acid and conjugate base. Hits Both Depiction Forms.
sulfene
- Sulfenic acid.
- [#16X2][OX2H,OX1H0-]
- Hits acid and conjugate base.
- Sulfenate.
- [#16X2][OX2H0]
X
halide (-halo -fluoro -chloro -bromo -iodo)
- Any carbon attached to any halogen
- [#6][F,Cl,Br,I]
- Halogen
- [F,Cl,Br,I]
- Three_halides groups
- [F,Cl,Br,I].[F,Cl,Br,I].[F,Cl,Br,I]
- Hits SMILES that have three halides.
acyl halide
- Acyl Halide
- [CX3](=[OX1])[F,Cl,Br,I]
- (acid halide, -oyl halide)
3. Gross Structual Features
Chirality
- Specified chiral carbon.
- [$([#6X4@](*)(*)(*)*),$([#6X4@H](*)(*)*)]
- Matches carbons whose chirality is specified (clockwise or anticlockwise) Will not match molecules whose chirality is unspecified b
ut that could otherwise be considered chiral. Also,therefore won't match molecules that would be chiral due to an implicit connection (i.e.i
mplicit H).
- "No-conflict" chiral match
- C[C@?](F)(Cl)Br
- Will match molecules with chiralities as specified or unspecified.
- "No-conflict" chiral match where an H is present
- C[C@?H](Cl)Br
- Will match molecules with chiralities as specified or unspecified.
Orbital Configuration
- sp2 cationic carbon
- [$([cX2+](:*):*)]
- Aromatic cationic sp2 carbon with a free electron in a non-bonding sp2 hybrid orbital
- Aromatic sp2 carbon.
- [$([cX3](:*):*),$([cX2+](:*):*)]
- The first recursive SMARTS matches carbons that are three-connected, the second case matches two-connected carbons (i.e cations with
a free electron in a non-bonding sp2 hybrid orbital)
- Any sp2 carbon.
- [$([cX3](:*):*),$([cX2+](:*):*),$([CX3]=*),$([CX2+]=*)]
- The first recursive SMARTS matches carbons that are three-connected and aromatic. The second case matches two-connected aromatic ca
rbons (i.e cations with a free electron in a non-bonding sp2 hybrid orbital). The third case matches three-connected non-aromatic carbons (
alkenes). The fourth case matches non-aromatic cationic alkene carbons.
- Any sp2 nitrogen.
- [$([nX3](:*):*),$([nX2](:*):*),$([#7X2]=*),$([NX3](=*)=*),$([#7X3+](-*)=*),$([#7X3+H]=*)]
- Can be aromatic 3-connected with 2 aromatic bonds (eg pyrrole,Pyridine-N-oxide), aromatic 2-connected with 2 aromatic bonds (and a free
pair of electrons in a nonbonding orbital, e.g.Pyridine), either aromatic or non-aromatic 2-connected with a double bond (and a free pair
of electrons in a nonbonding orbital, e.g. C=N ), non aromatic 3-connected with 2 double bonds (e.g. a nitro group; this form does not exist
in reality, SMILES can represent the charge-separated resonance structures as a single uncharged structure), either aromatic or non-aromatic
3-connected cation w/ 1 single bond and 1 double bond (e.g. a nitro group, here the individual charge-separated resonance structures are
specified), either aromatic or non-aromatic 3-connected hydrogenated cation with a double bond (as the previous case but R is hydrogen),
rspectively.
- Explicit Hydrogen on sp2-Nitrogen
- [$([#1X1][$([nX3](:*):*),$([nX2](:*):*),$([#7X2]=*),$([NX3](=*)=*),$([#7X3+](-*)=*),$([#7X3+H]=*)])]
- (H must be an isotope or ion)
- sp3 nitrogen
- [$([NX4+]),$([NX3]);!$(*=*)&!$(*:*)]
- One atom that is (a 4-connected N cation or a 3-connected N) and is not double bonded and is not aromatically bonded.
- Explicit Hydrogen on an sp3 N.
- [$([#1X1][$([NX4+]),$([NX3]);!$(*=*)&!$(*:*)])]
- One atom that is a 1-connected H that is bonded to an sp3 N. (H must be an isotope or ion)
- sp2 N in N-Oxide
- [$([$([NX3]=O),$([NX3+][O-])])]
- sp3 N in N-Oxide Exclusive:
- [$([$([NX4]=O),$([NX4+][O-])])]
- Only hits if O is explicitly present. Won't hit if * is in SMILES in place of O.
- sp3 N in N-Oxide Inclusive:
- [$([$([NX4]=O),$([NX4+][O-,#0])])]
- Hits if O could be present. Hits if * if used in place of O in smiles.
Connectivity
- Quaternary Nitrogen
- [$([NX4+]),$([NX4]=*)]
- Hits non-aromatic Ns.
- Tricoordinate S double bonded to N.
- [$([SX3]=N)]
- S double-bonded to Carbon
- [$([SX1]=[#6])]
- Hits terminal (1-connected S)
- Triply bonded N
- [$([NX1]#*)]
- Divalent Oxygen
- [$([OX2])]
Chains & Branching
- Unbranched_alkane groups.
- [R0;D2][R0;D2][R0;D2][R0;D2]
- Only hits alkanes (single-bond chains). Only hits chains of at-least 4 members. All non-(implicit-hydrogen) atoms count as branches
(e.g. halide substituted chains count as branched).
- Unbranched_chain groups.
- [R0;D2]~[R0;D2]~[R0;D2]~[R0;D2]
- Hits any bond (single, double, triple). Only hits chains of at-least 4 members. All non-(implicit-hydrogen) atoms count as branches
(e.g. halide substituted chains count as branched).
- Long_chain groups.
- [AR0]~[AR0]~[AR0]~[AR0]~[AR0]~[AR0]~[AR0]~[AR0]
- Aliphatic chains at-least 8 members long.
- Atom_fragment
- [!$([#6+0]);!$(C(F)(F)F);!$(c(:[!c]):[!c])!$([#6]=,#[!#6])]
- (CLOGP definition) A fragment atom is a not an isolating carbon
- Carbon_isolating
- [$([#6+0]);!$(C(F)(F)F);!$(c(:[!c]):[!c])!$([#6]=,#[!#6])]
- This definition is based on that in CLOGP, so it is a charge-neutral carbon, which is not a CF3 or an aromatic C between two aromati
c hetero atoms eg in tetrazole, it is not multiply bonded to a hetero atom.
- Terminal S bonded to P
- [$([SX1]~P)]
- Nitrogen on -N-C=N-
- [$([NX3]C=N)]
- Nitrogen on -N-N=C-
- [$([NX3]N=C)]
- Nitrogen on -N-N=N-
- [$([NX3]N=N)]
- Oxygen in -O-C=N-
- [$([OX2]C=N)]
Rotation
- Rotatable bond
- [!$(*#*)&!D1]-!@[!$(*#*)&!D1]
- An atom which is not triply bonded and not one-connected i.e.terminal connected by a single non-ring bond to and equivalent atom. Note
that logical operators can be applied to bonds ("-&!@"). Here, the overall SMARTS consists of two atoms and one bond. The bond is "site
and not ring". *#* any atom triple bonded to any atom. By enclosing this SMARTS in parentheses and preceding with $, this enables us to
use $(*#*) to write a recursive SMARTS using that string as an atom primitive. The purpose is to avoid bonds such as c1ccccc1-C#C which wo
be considered rotatable without this specification.
Cyclic Features
- Bicyclic
- [$([*R2]([*R])([*R])([*R]))].[$([*R2]([*R])([*R])([*R]))]
- Bicyclic compounds have 2 bridgehead atoms with 3 arms connecting the bridgehead atoms.
- Ortho
- *-!:aa-!:*
- Ortho-substituted ring
- Meta
- *-!:aaa-!:*
- Meta-substituted ring
- Para
- *-!:aaaa-!:*
- Para-substituted ring
- Acylic-bonds
- *!@*
- Single bond and not in a ring
- *-!@*
- Non-ring atom
- [R0] or [!R]
- Macrocycle groups.
- [r;!r3;!r4;!r5;!r6;!r7]
- S in aromatic 5-ring with lone pair
- [sX2r5]
- Aromatic 5-Ring O with Lone Pair
- [oX2r5]
- N in 5-sided aromatic ring
- [nX2r5]
- Spiro-ring center
- [X4;R2;r4,r5,r6](@[r4,r5,r6])(@[r4,r5,r6])(@[r4,r5,r6])@[r4,r5,r6]rings size 4-6
- N in 5-ring arom
- [$([nX2r5]:[a-]),$([nX2r5]:[a]:[a-])] anion
- CIS or TRANS double bond in a ring
- */,\[R]=;@[R]/,\*
- An isomeric SMARTS consisting of four atoms and three bonds.
- CIS or TRANS double or aromatic bond in a ring
- */,\[R]=,:;@[R]/,\*
- Unfused benzene ring
- [cR1]1[cR1][cR1][cR1][cR1][cR1]1
- To find a benzene ring which is not fused, we write a SMARTS of 6 aromatic carbons in a ring where each atom is only in one ring:
- Multiple non-fused benzene rings
- [cR1]1[cR1][cR1][cR1][cR1][cR1]1.[cR1]1[cR1][cR1][cR1][cR1][cR1]1
- Fused benzene rings
- c12ccccc1cccc2
4. Meta-SMARTS
Amino Acids
- Generic amino acid: low specificity.
- [NX3,NX4+][CX4H]([*])[CX3](=[OX1])[O,N]
- For use w/ non-standard a.a. search. hits pro but not gly. Hits acids and conjugate bases. Hits single a.a.s and specific residues
w/in polypeptides (internal, or terminal).
- A.A. Template for 20 standard a.a.s
- [$([$([NX3H,NX4H2+]),$([NX3](C)(C)(C))]1[CX4H]([CH2][CH2][CH2]1)[CX3](=[OX1])[OX2H,OX1-,N]),
$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H2][CX3](=[OX1])[OX2H,OX1-,N]),$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H]([*])[CX3](=[OX1])[OX2H,OX1-,N])]
- Pro, Gly, Other. Replace * w/ the entire 18_standard_side_chains list to get "any standard a.a." Hits acids and conjugate bases.
Hits single a.a.s and specific residues w/in polypeptides (internal, or terminal).
- Proline
- [$([NX3H,NX4H2+]),$([NX3](C)(C)(C))]1[CX4H]([CH2][CH2][CH2]1)[CX3](=[OX1])[OX2H,OX1-,N]
- Glycine
- [$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H2][CX3](=[OX1])[OX2H,OX1-,N])]
- Other a.a.
- [$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H]([*])[CX3](=[OX1])[OX2H,OX1-,N]
- Replace * w/ a specific a.a. side chain from the 18_standard_side_chains list to hit a specific standard a.a. Won't work with Proline
or Glycine, they have their own SMARTS (see side chain list). Hits acids and conjugate bases. Hits single a.a.s and specific residues w/i
polypeptides (internal, or terminal).
Example usage:
Alanine side chain is [CH3X4]
Alanine Search is [$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H]([CH3X4])[CX3](=[OX1])[OX2H,OX1-,N]
- 18_standard_aa_side_chains.
- ([$([CH3X4]),$([CH2X4][CH2X4][CH2X4][NHX3][CH0X3](=[NH2X3+,NHX2+0])[NH2X3]),
$([CH2X4][CX3](=[OX1])[NX3H2]),$([CH2X4][CX3](=[OX1])[OH0-,OH]),
$([CH2X4][SX2H,SX1H0-]),$([CH2X4][CH2X4][CX3](=[OX1])[OH0-,OH]),
$([CH2X4][#6X3]1:[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:
[#6X3H]:[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:[#6X3H]1),
$([CHX4]([CH3X4])[CH2X4][CH3X4]),$([CH2X4][CHX4]([CH3X4])[CH3X4]),
$([CH2X4][CH2X4][CH2X4][CH2X4][NX4+,NX3+0]),$([CH2X4][CH2X4][SX2][CH3X4]),
$([CH2X4][cX3]1[cX3H][cX3H][cX3H][cX3H][cX3H]1),$([CH2X4][OX2H]),
$([CHX4]([CH3X4])[OX2H]),$([CH2X4][cX3]1[cX3H][nX3H][cX3]2[cX3H][cX3H][cX3H][cX3H][cX3]12),
$([CH2X4][cX3]1[cX3H][cX3H][cX3]([OHX2,OH0X1-])[cX3H][cX3H]1),$([CHX4]([CH3X4])[CH3X4])])
- Can be any of the standard 18 (Pro & Gly are treated separately) Hits acids and conjugate bases.
- N in Any_standard_amino_acid.
- [$([$([NX3H,NX4H2+]),$([NX3](C)(C)(C))]1[CX4H]([CH2][CH2][CH2]1)[CX3]
(=[OX1])[OX2H,OX1-,N]),$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H2][CX3]
(=[OX1])[OX2H,OX1-,N]),$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H]([$([CH3X4]),
$([CH2X4][CH2X4][CH2X4][NHX3][CH0X3](=[NH2X3+,NHX2+0])[NH2X3]),$
([CH2X4][CX3](=[OX1])[NX3H2]),$([CH2X4][CX3](=[OX1])[OH0-,OH]),
$([CH2X4][SX2H,SX1H0-]),$([CH2X4][CH2X4][CX3](=[OX1])[OH0-,OH]),
$([CH2X4][#6X3]1:[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:
[#6X3H]:[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:[#6X3H]1),
$([CHX4]([CH3X4])[CH2X4][CH3X4]),$([CH2X4][CHX4]([CH3X4])[CH3X4]),
$([CH2X4][CH2X4][CH2X4][CH2X4][NX4+,NX3+0]),$([CH2X4][CH2X4][SX2][CH3X4]),
$([CH2X4][cX3]1[cX3H][cX3H][cX3H][cX3H][cX3H]1),$([CH2X4][OX2H]),
$([CHX4]([CH3X4])[OX2H]),$([CH2X4][cX3]1[cX3H][nX3H][cX3]2[cX3H][cX3H][cX3H][cX3H][cX3]12),
$([CH2X4][cX3]1[cX3H][cX3H][cX3]([OHX2,OH0X1-])[cX3H][cX3H]1),
$([CHX4]([CH3X4])[CH3X4])])[CX3](=[OX1])[OX2H,OX1-,N])]
- Format is A.A.Template for 20 standard a.a.s. where * is replaced by the entire 18_standard_side_chains list (or'd together). A gen
eric amino acid with any of the 18 side chains or, proline or glycine. Hits "standard" amino acids that have terminally appended groups (i.e
. "standard" refers to the side chains). (Pro, Gly, or 18 normal a.a.s.) Hits single a.a.s and specific residues w/in polypeptides (intern
al, or terminal).
- Non-standard amino acid.
- [$([NX3,NX4+][CX4H]([*])[CX3](=[OX1])[O,N]);!$([$([$([NX3H,NX4H2+]),
$([NX3](C)(C)(C))]1[CX4H]([CH2][CH2][CH2]1)[CX3](=[OX1])[OX2H,OX1-,N]),
$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H2][CX3](=[OX1])[OX2H,OX1-,N]),
$([$([NX3H2,NX4H3+]),$([NX3H](C)(C))][CX4H]([$([CH3X4]),$([CH2X4][CH2X4][CH2X4][NHX3][CH0X3]
(=[NH2X3+,NHX2+0])[NH2X3]),$([CH2X4][CX3](=[OX1])[NX3H2]),$([CH2X4][CX3](=[OX1])[OH0-,OH]),
$([CH2X4][SX2H,SX1H0-]),$([CH2X4][CH2X4][CX3](=[OX1])[OH0-,OH]),$([CH2X4][#6X3]1:
[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),$([#7X3H])]:
[#6X3H]:[$([#7X3H+,#7X2H0+0]:[#6X3H]:[#7X3H]),
$([#7X3H])]:[#6X3H]1),$([CHX4]([CH3X4])[CH2X4][CH3X4]),$([CH2X4][CHX4]([CH3X4])[CH3X4]),
$([CH2X4][CH2X4][CH2X4][CH2X4][NX4+,NX3+0]),$([CH2X4][CH2X4][SX2][CH3X4]),
$([CH2X4][cX3]1[cX3H][cX3H][cX3H][cX3H][cX3H]1),$([CH2X4][OX2H]),$([CHX4]([CH3X4])[OX2H]),
$([CH2X4][cX3]1[cX3H][nX3H][cX3]2[cX3H][cX3H][cX3H][cX3H][cX3]12),
$([CH2X4][cX3]1[cX3H][cX3H][cX3]([OHX2,OH0X1-])[cX3H][cX3H]1),
$([CHX4]([CH3X4])[CH3X4])])[CX3](=[OX1])[OX2H,OX1-,N])])]
- Generic amino acid but not a "standard" amino acid ("standard" refers to the 20 normal side chains). Won't hit amino acids that are
non-standard due solely to the fact that groups are terminally-appended to the polypeptide chain (N or C term). format is [$(generic a.a.);
!$(not a standard one)] Hits single a.a.s and specific residues w/in polypeptides (internal, or terminal).
Recursive or Multiple
Recursive SMARTS: Atoms connected to particular SMARTS
- Ortho
- [SMARTS_expression]-!:aa-!:[SMARTS_expression]
- Meta
- [SMARTS_expression]-!:aaa-!:[SMARTS_expression]
- Para
- [SMARTS_expression]-!:aaaa-!:[SMARTS_expression]
- Hydrogen
- [$([#1][SMARTS_expression])]
- Hydrogen must be explicit i.e. an isotope or charged
- Nitrogen
- [$([#7][SMARTS_expression])]
- Oxygen
- [$([#8][SMARTS_expression])]
- Fluorine
- [$([#9][SMARTS_expression])]
Recursive SMARTS: Multiple groups
- Two possible groups
- [$(SMARTS_expression_A),$(SMARTS_expression_B)]
- Hits atoms in either environment or group of interest, A or B.
Example usages:
Azide group is : [$(*-[NX2-]-[NX2+]#[NX1]),$(*-[NX2]=[NX2+]=[NX1-])]
Azide ion is: [$([NX1-]=[NX2+]=[NX1-]),$([NX1]#[NX2+]-[NX1-2])]
Azide or azide ion is: [$([$(*-[NX2-]-[NX2+]#[NX1]),$(*-[NX2]=[NX2+]=[NX1-])]),$([$([NX1-]=[NX2+]=[NX1-]),$(
[NX1]#[NX2+]-[NX1-2])])]
- Recursive SMARTS
- [$([atom_that_gets_hit][other_atom][other_atom])]
- Hits first atom within parenthesis
Example usages:
[$([CX3]=[OX1])] hits Carbonyl Carbon
[$([OX1]=[CX3])] hits Carbonyl Oxygen
Single only, Double only, Single or Double
- Sulfide
- [#16X2H0]
- (-alkylthio) Won't hit thiols. Hits disulfides too.
- Mono-sulfide
- [#16X2H0][!#16]
- (alkylthio- or alkoxy-) R-S-R Won't hit thiols. Won't hit disulfides.
- Di-sulfide
- [#16X2H0][#16X2H0]
- Won't hit thiols. Won't hit mono-sulfides.
- Two sulfides
- [#16X2H0][!#16].[#16X2H0][!#16]
- Won't hit thiols. Won't hit mono-sulfides. Won't hit disulfides.
- Acid/conj-base
- [OX2H,OX1H0-]
- Hits acid and conjugate base. acid/base
- Non-acid Oxygen
- [OX2H0]
- Acid/base
- [H1,H0-]
- Works for any atom if base form has no Hs & acid has only one.
Muntiple Disconnected Groups
- Two disconnected SMARTS fragments
- ([Cl!$(Cl~c)].[c!$(c~Cl)])
- A molecule that contains a chlorine and an aromatic carbon but which are not connected to each other. Uses component-level SMARTS. B
oth SMARTS fragments must be in the same SMILES target fragment.
- Two disconnected SMARTS fragments
- ([Cl]).([c])
- Hits SMILES that contain a chlorine and an aromatic carbon but which are in different SMILES fragments.
- Two not-necessarily connected SMARTS fragments
- ([Cl].[c])
- Uses component-level SMARTS. Both SMARTS fragments must be in the same SMILES target fragment.
- Two not-necessarily connected fragments
- ([SMARTS_expression]).([SMARTS_expression])
- Uses component-level SMARTS. SMARTS fragments are each in different SMILES target fragments.
- Two primary or secondary amines
- [NX3;H2,H1;!$(NC=O)].[NX3;H2,H1;!$(NC=O)]
- Here we use the "disconnection" symbol (".") to match two separate not-necessarily bonded identical patterns.
Tools &Tricks
Alternative/Equivalent Representations
- Any carbon aromatic or non-aromatic
- [#6] or [c,C]
- SMILES wildcard
- [#0]
- This SMARTS hits the SMILES *
- Factoring
- [OX2,OX1-][OX2,OX1-] or [O;X2,X1-][O;X2,X1-]
- Factor out common atomic expressions in the recursive SMARTS. May improve human readability.
- High-precidence "and"
- [N&X4&+,N&X3&+0] or [NX4+,NX3+0]
- High-precidence "and" (&) is the default logical operator. "Or" (,) is higher precidence than & and low-precidence "and" (;)
is lower precidence than &.
Hydrogens
- Any atom w/ at-least 1 H
- [*!H0,#1]
- In SMILES and SMARTS, Hydrogen is not considered an atom (unless it is specified as an isotope). The hydrogen count is instead consi
dered a property of an atom. This SMARTS provides a way to effectively hit Hs themselves.
- Hs on Carbons
- [#6!H0,#1]
- Atoms w/ 1 H
- [H,#1]
5. Electron & Proton Features
Acids & Bases
- Acid
- [!H0;F,Cl,Br,I,N+,$([OH]-*=[!#6]),+]
- Proton donor
- Carboxylic acid
- [CX3](=O)[OX2H1]
- (-oic acid, COOH)
- Carboxylic acid or conjugate base.
- [CX3](=O)[OX1H0-,OX2H1]
- Hydroxyl_acidic
- [$([OH]-*=[!#6])]
- An acidic hydroxyl is a hydroxyl bonded to an atom which is multiply bonded to a hetero atom, this includes carboxylic, sulphur, pho
sphorous, halogen and nitrogen oxyacids
- Phosphoric_Acid
- [$(P(=[OX1])([$([OX2H]),$([OX1-]),$([OX2]P)])([$([OX2H]),$([OX1-]),$([OX2]P)])[$([OX2H]),$([OX1-]),$([OX2]P)]),$([P+]([OX1-])([$([OX2H]),$([OX1-]),$([OX2]P)])([$([OX2H]),$([OX1-]),$([OX2]P)])[$([OX2H]),$([OX1-]),$([OX2]P)])]
- Hits both forms. Hits orthophosphoric acid and polyphosphoric acid anhydrides. Doesn't hit monophosphoric acid anhydride esters (in
cluding acidic mono- & di- esters) but will hit some polyphosphoric acid anhydride esters (mono- esters on pyrophosphoric acid and longe
r, di- esters on linear triphosphoric acid and longer). Hits acid and conjugate base.
- Sulfonic Acid. High specificity.
- [$([#16X4](=[OX1])(=[OX1])([#6])[OX2H,OX1H0-]),$([#16X4+2]([OX1-])([OX1-])([#6])[OX2H,OX1H0-])]
- Only hits carbo- sulfonic acids (Won't hit herteroatom-substituted molecules). Hits acid and conjugate base. Hits Both Depiction Fo
rms. Hits Arene sulfonic acids.
- Acyl Halide
- [CX3](=[OX1])[F,Cl,Br,I]
- (acid halide, -oyl halide)
Charge
- Anionic divalent Nitrogen
- [NX2-]
- Oxenium Oxygen
- [OX2H+]=*
- Oxonium Oxygen
- [OX3H2+]
- Carbocation
- [#6+]
- sp2 cationic carbon.
- [$([cX2+](:*):*)]
- Aromatic cationic sp2 carbon with a free electron in a non-bonding sp2 hybrid orbital
- Azide ion.
- [$([NX1-]=[NX2+]=[NX1-]),$([NX1]#[NX2+]-[NX1-2])]
- Hits N in azide ion
- Zwitterion High Specificity
- [+1]~*~*~[-1]
- +1 charged atom separated by any 3 bonds from a -1 charged atom.
- Zwitterion Low Specificity, Crude
- [$([!-0!-1!-2!-3!-4]~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~*~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~*~*~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~*~*~*~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~*~*~*~*~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~*~*~*~*~*~*~[!+0!+1!+2!+3!+4]),$([!-0!-1!-2!-3!-4]~*~*~*~*~*~*~*~*~*~[!+0!+1!+2!+3!+4])]
- Variously charged moieties separated by up to ten bonds.
- Zwitterion Low Specificity
- ([!-0!-1!-2!-3!-4].[!+0!+1!+2!+3!+4])
- Variously charged moieties that are within the same molecule but not-necessarily connected. Uses component-level grouping.
H-bond Donors & Acceptors
- Hydrogen-bond acceptor
- [#6,#7;R0]=[#8]
- Only hits carbonyl and nitroso. Matches a 2-atom pattern consisting of a carbon or nitrogen not in a ring, double bonded to an oxyge
n.
- Hydrogen-bond acceptor
- [!$([#6,F,Cl,Br,I,o,s,nX3,#7v5,#15v5,#16v4,#16v6,*+1,*+2,*+3])]
- A H-bond acceptor is a heteroatom with no positive charge, note that negatively charged oxygen or sulphur are included. Excluded are
halogens, including F, heteroaromatic oxygen, sulphur and pyrrole N. Higher oxidation levels of N,P,S are excluded. Note P(III) is currentl
y included. Zeneca's work would imply that (O=S=O) shoud also be excluded.
- Hydrogen-bond donor.
- [!$([#6,H0,-,-2,-3])]
- A H-bond donor is a non-negatively charged heteroatom with at least one H
- Hydrogen-bond donor.
- [!H0;#7,#8,#9]
- Must have an N-H bond, an O-H bond, or a F-H bond
- Possible intramolecular H-bond
- [O,N;!H0]-*~*-*=[$([C,N;R0]=O)]
- Note that the overall SMARTS consists of five atoms. The fifth atom is defined by a "recursive SMARTS", where "$()" encloses a valid
nested SMARTS and acts syntactically like an atom-primitive in the overall SMARTS. Multiple nesting is allowed.
Radicals
- Carbon Free-Radical
- [#6;X3v3+0]
- Hits a neutral carbon with three single bonds.
- Nitrogen Free-Radical
- [#7;X2v4+0]
- Hits a neutral nitrogen with two single bonds or with a single and a triple bond.
6. Breakdown of Complex SMARTS
|