我的问题:长期的化学术语,没有任何指导浏览器关于在哪里打破术语。有些术语超过70个字符。
我的目标:在逻辑插入点引入<wbr>
。
问题示例:
打破化学术语的机会的例子(例如,一个人发表该术语而不是键入术语的方式):
<wbr>
喹啉<wbr>
亚甲基<wbr>
亚砜<wbr>
氯通常(但不总是)iso,tetra和methyl是word_break_opportunities。
一般情况下,我应该如何设置环境:
当遇到新的化学术语时,控制文件将使用新规则进行更新。
想要使用:sed,awk,regex。
环境可能如下:
awk rules.awk inputfile.txt > outputfile.txt
准备好进行试验和错误,所以我会理解基本的解释,以便我可以优化控制文件。
我的平台:Windows 7; 64位; 8 GB内存;的GnuWin32; sed 4.1.5.4013; awk 3.1.6.2962
提前谢谢。
答案 0 :(得分:1)
你的第一份工作是提出一份既清楚又不易破碎的清单。完成后,您可以定义要解释的格式,并围绕它构建一些代码。
例如,我可能会这样:
然后是一些代码:
for Each openingString {
if (string.startsWith(openingString)){
insert wbr after opening string
}
}
2。 打开字符,除非后面跟着 ISO | “TOPE |鲍勃” 四| “白”
for Each openingString {
if (string.startsWith(openingString)){
get the next element from the row (after the |, surrounded by ")
split around the |
for each part
if (!string.startsWith(part, openingString.length)) {
insert wbr after openingString
}
}
}
然后从那里建立起来。然而,这是一项非常重要的任务,它需要花费很多时间才能获得有用的东西,但是如果你致力于它的话!第一项任务是决定如何保留这些映射。