3、SMILES分支与环:括号分支、数字环标记、环闭合规则

好了,咱们正式开始处理分子的“形状”问题。线性SMILES字符串只能表示直链,但真实分子哪有那么乖?有侧链,有环,这才是常态。

分支和环,是SMILES里最核心的两个扩展规则。掌握了它们,你才能写出绝大多数有机分子的SMILES。

3.1 括号分支:给分子挂上侧链

分支用圆括号 () 表示。说白了,就是把侧链“挂”在主干上。

语法很简单:你正在写主干原子,突然遇到一个左括号 (,那就先把这个括号里的分支写完,遇到右括号 ) 后,再回来继续写主干。

举个例子,异丁醇 (CH₃)₂CHCH₂OH:

CC(C)CO

来拆解一下:

  • 第一个 C:第一个甲基。
  • 第二个 C:主干上的叔碳。
  • (C):括号分支,代表挂在叔碳上的第二个甲基。
  • CO:完成分支后,继续写主干剩下的 C-O-H。

个人习惯:写复杂分支时,我通常会先在草稿纸上标出主干,再用括号把侧链包起来。这样不容易乱。

分支还可以嵌套。比如季戊四醇 C(CH₂OH)₄ 的一部分:

C(C(CO))(C(CO))...

不过实际很少这么写,因为太长了。但你要理解这个嵌套逻辑。

关键规则:括号分支内的原子,跟主干上的原子是“平级”的。它不增加主链长度,只增加支链复杂度。

3.2 数字环标记:如何用线性的字符串表示环

分子里有环,字符串是线性的,怎么办?SMILES想了个聪明办法:在闭环原子后面加一个数字,表示这个环的起点和终点。

比如环己烷:

C1CCCCC1

第1个 C 后面有个数字 1,表示“这里是一个环的起点”。你沿着字符串走完 C-C-C-C-C,到了最后一个 C 又遇到 1,表示“闭合回起点”。

用代码视角理解:这就像一个指针,标记了需要连在一起的原子。

我曾经踩过的坑:数字只用于标记,不表示原子数量。比如 C12 表示一个碳原子同时是2号环和1号环的成员。千万不要把数字当成原子类型来读。

数字可以重复使用吗?可以。但必须在闭环之后。规则是:同一个数字,在SMILES字符串中最多出现两次——一次标记起点,一次标记终点。用过之后你可以在后面再用这个数字,表示另一个新环。

比如双环化合物:

C1CC2CC1C2

这里:

  • C1 是1号环起点。
  • C2 是2号环起点。
  • 走到 C1 闭合1号环。
  • 最后 C2 闭合2号环。

你看,数字1和2各出现了两次,完美闭环。

3.3 环闭合规则:别让环“开”着

对于初学者,最容易错的地方就是环没闭就结束了。SMILES要求:你开了环(写了数字),就必须闭掉它。

闭不完?那就是无效SMILES。

我总结了一个检查口诀:遇到数字,心里记一下;遇到第二次,确认闭合;全串写完,数字应该全部配对出现。

还有一点很重要:环的闭合方向由数字的先后顺序决定,不需要考虑空间构型。你写成 C1CCCCC1 还是 CC1CCCC1,只要闭合点正确,都表示环己烷。不过规范写法习惯从非取代的碳开始编号。

来几个实际例子:

分子名 SMILES 环规则说明
环己烷
C1CCCCC1
1号环,6个碳
苯
c1ccccc1
小写c表示芳香碳,1号环闭合
吡啶
c1ccncc1
芳香环,含一个N原子
十氢化萘
C1CCC2CCCCC2C1
两个环共用两个碳,数字1和2各出现两次

你看最后一个例子,十氢化萘有两个环,共用一条边。这种并环结构,需要两对数字来标记。

一个实用技巧:写并环分子时,我会先确定主轴上的原子序列,再决定哪个环用哪个数字。通常1号环是主要环,2号、3号依次去标。

3.4 分支与环的组合示例

分子结构很少只有环或只有分支。实战中两者是混在一起的。来看一个真实的药物分子——布洛芬:

CC(C)Cc1ccc(cc1)C(C)C(=O)O

拆解:

  • CC(C)C:异丁基侧链(分支)。
  • c1ccc(cc1):1号环,注意括号里 cc1 是4号位上的取代基起点,闭合1后继续写。
  • C(C)C(=O)O:丙酸部分,还有另一个分支。

你看,这个分子既有分支括号,又有环数字,还有原子类型大小写变化。一个小小字符串,信息密度极高。

核心总结:

  • 分支用括号 () 括起来,可以嵌套。
  • 环用数字标记,同一个数字出现两次表示闭环。
  • 分支和环可以混写,顺序无严格要求,但必须闭合完整。
  • 推荐写完手动数一遍数字配对。

下面这张图,是我自己画的SMILES分支与环的核心规则对照。你可以先扫一眼,然后再回来看文字。

SMILES 分支与环规则结构图 线性 SMILES 字符串 遇到括号 ( ) 表示分支 括号内为侧链 可嵌套多个括号 分支不影响主链长度 只增加侧链复杂度 遇到数字 n 表示环起点/终点 同一数字出现两次 形成闭合环 环数字可重用 用完后再开新环 分支和环可混合使用 · 数字必须配对 · 括号必须成对

图示很清楚了。上面是分支,下面是环,二者互不干扰,可以从同一个主干出发。实际写SMILES时,大脑里要同时维持两条线:一条是当前写的原子索引,另一条是已经打开的环数字。