正则表达式 – 如何将常规引号(即’,“)转换为LaTeX / TeX引号(
发布时间:2020-12-14 05:59:24 所属栏目:百科 来源:网络整理
导读:给出用正常引号写的文档,例如 Ben said "buttons,dear sir".I replied "Did you say 'buttons'?" to him. 有什么方法可以用适当的语义将这些东西变成LaTeX引号.即 Ben said ``buttons,dear sir''.I replied ``Did you say `buttons'?'' to him. 所以LaTeX产
给出用正常引号写的文档,例如
Ben said "buttons,dear sir". I replied "Did you say 'buttons'?" to him. 有什么方法可以用适当的语义将这些东西变成LaTeX引号.即 Ben said ``buttons,dear sir''. I replied ``Did you say `buttons'?'' to him. 所以LaTeX产生: Ben said “buttons,dear sir”. I replied “Did you say ‘buttons’?” 我的第一个想法是转向正则表达式.但是,我没有从谷歌或正则表达式库获得任何点击“LaTeX引用正则表达式”,当然“TeX引用正则表达式”似乎返回太多. 谢谢. 解决方法
一般来说,这个问题比看起来更难.
最简单的情况可以用正则表达式来处理,但是对于更一般的情况,你几乎肯定需要构建一个递归解析器:正则表达式只有在没有嵌套时才能工作. 最大的问题是与识别未配对的单个“ – ”相关联 – 收缩(“不”中的“”不应该改变,不应该配对). 让我们看看我们是否可以编写可用的EBNF描述: input: text+ text: uquote|squote|dquote squote "'" text "'" dquote """ text """ uquote: [contraction|.]+ contraction: [A-Za-z]+ "'" [A-Za-z]+ 仅限于在单词中间带有“’”的收缩.除了squote和dquote术语在适当时替换引号之外,所有相关操作都将回显输入. 我使用正则表达式,然后使用人工修复程序进行相当简单的一次性操作,但对于正在进行的工作而言,这将是劳动密集型的. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
热点阅读