Structure match
MolecularGraph.fastquerymatches — Methodfastquerymatches(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.
MolecularGraph.isquerymatch — Methodisquerymatch(mol, query; kwargs...)Return whether mol matches with the query.
MolecularGraph.querymatch — Methodquerymatch(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
MolecularGraph.structmatches — Methodstructmatches(mol1::UndirectedGraph, mol2::UndirectedGraph; kwargs...) -> IteratorGenerate molecular graph match mappings between mol1 and mol2. If no match found, return nothing.
MolecularGraph.substructmatches — Methodsubstructmatches(mol1::UndirectedGraph, mol2::UndirectedGraph; kwargs...) -> IteratorGenerate 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.