Dom*_*ger 1 html c++ regex string
我有一堆像这样的文字:
foo
bar
baz
Run Code Online (Sandbox Code Playgroud)
什么可能是C++中最有效的转换方式:
<p>foo<br />bar</p>
<p>baz</p>
Run Code Online (Sandbox Code Playgroud)
对于大(ish)数量的文本(最多8000个字符).
我很高兴使用boost regex_replace,但我想知道字符串搜索\n\n是否更有效?有什么想法吗?还有其他方法吗?
在我工作的环境中,大多数第三方库都无法使用.
我会使用一个简单的状态机.它确实要求通过循环每次比较状态,但它应该无关紧要(可以通过在第三状态中具有子循环来优化它 - 见下文).开始状态与遇到两个换行符时相同.前一个字符将有一个变量,另一个用于跟踪最后一个换行符的位置(用于生成输出).
州将是:
遇到了双新线.进入状态时的动作:输出<p>,行和</ p>
遇到单一新线.进入状态时的动作:线路输出和
遇到正常人物
该程序看起来更像是一个C程序,但......