Java 模式匹配

Java 模式匹配,java,algorithm,pattern-matching,Java,Algorithm,Pattern Matching,我很快就要开始一个新项目的工作了。本质上这里有许多化合物,每种化合物都有自己的前缀/标识符。例如,几个字符后跟几个整数之类的东西,尽管它们都不同 我想知道是否有一种算法可以有效地匹配这些元素,而不是使用大量的if-else 我想一个带有key->value的hash映射,其中key是一些掩码可能会很好,但我希望有人能建议一些更复杂的东西,我可以使用 因为它不仅仅是化合物,它可能有很多不同的值 谢谢将您的公式转换为字符串,然后使用正则表达式匹配,这将使您的生活更轻松,您将学习正则表达式,这是一件非

我很快就要开始一个新项目的工作了。本质上这里有许多化合物,每种化合物都有自己的前缀/标识符。例如,几个字符后跟几个整数之类的东西,尽管它们都不同

我想知道是否有一种算法可以有效地匹配这些元素,而不是使用大量的if-else

我想一个带有key->value的hash映射,其中key是一些掩码可能会很好,但我希望有人能建议一些更复杂的东西,我可以使用

因为它不仅仅是化合物,它可能有很多不同的值


谢谢

将您的公式转换为字符串,然后使用正则表达式匹配,这将使您的生活更轻松,您将学习正则表达式,这是一件非常方便的事情。

如果您想专业地使用它,请创建语法文件并使用生成语法分析器。

考虑以下事实:

1) 两个分子可以具有相同的结构标识符,例如通过立体测量或比较两个复杂分子(特别是具有许多苯环)而产生

P>2)考虑。它定义了分子结构的明确版本,你们可以从中提取结构公式。例如:

1/C2H6O/c1-2-3/h3H,2H2,1H3
代表

CH3CH2OH (ethanol)  
3) 您可以检查MQL分子查询语言


4) 自己实现它可能需要很多时间。有一些上下文无关的语法,但它们非常复杂,尝试寻找一些自由分子查询

不,开发了化合物的内部表示,但数据库不会剪切它,因为用户搜索的单词可以是绝对的任何东西,我必须,基于此,显示适当的信息-可能来自许多不同的数据库-这就是为什么正确识别字符串,更重要的是“有效地”识别字符串很重要这些标识符来自哪里?请注意,对于化合物,已经有了存储标识符和指纹以及高效查询庞大数据集的成熟方法。不要重新发明轮子,不要使用自己的任意标识符模式。使用一些从几十年的研究和优化中受益的既定方法。我在一家制药公司工作