Structure match

MolecularGraph.fastquerymatchesMethod
fastquerymatches(mol::UndirectedGraph, query::QueryMol; kwargs...
    ) -> Dict{Int,Int}

Generate query match mappings between mol and query. If no match found, return nothing.

The query should not have any component level expression that means it should not have any dots (.). This is intended for use in functional group detection.

source
MolecularGraph.querymatchMethod
querymatch(mol::UndirectedGraph, query::QueryMol; kwargs...) -> Dict{Int,Int}

Generate substructure match mappings between mol1 and mol2. If no match found, return nothing.

This accepts also disconnected single atom but returns only the first match. This function is intended for use in SMARTS query search

source
MolecularGraph.structmatchesMethod
structmatches(mol1::UndirectedGraph, mol2::UndirectedGraph; kwargs...) -> Iterator

Generate molecular graph match mappings between mol1 and mol2. If no match found, return nothing.

source
MolecularGraph.substructmatchesMethod
substructmatches(mol1::UndirectedGraph, mol2::UndirectedGraph; kwargs...) -> Iterator

Generate substructure match mappings between mol1 and mol2. If no match found, return nothing.

The mapping is based on only edge induced subgraph isomorphism and therefore it does not care disconnected single atom matches. This function is intended for use in substructure search. If you need single atom SMARTS match (ex. [#16;X2;!R]), see querymatch.

source