我正在解析PHP文件并在HTML中包装函数原型元素.但是如果有&符号,则会破坏我的代码.
输入:function foo (&$var1, &$var2){...}// as String
Desired输出(在HTML中):&$var1, &$var2 //基本上,只输出变量,以便它们在浏览器中正确显示
现在,我将每个变量发送到awk的子方法1,然后发送到sed.
sub(/^&/, "\\\&", param) #param is the variable of interest (e.g. &$var1)
#Intermediate step in case it's relevant. The awk-processed elements
#are sent to ${file}_param.txt. Each set of parameters are delimited by colons.
param=$(cut -d: -f$counter ${file}_param.txt)
#Replace some default text in template file with real stuff.
sed -i "s|@PARAM|$param|1" "$base"_funct_def.txt
Run Code Online (Sandbox Code Playgroud)
输出我得到:正在解释&符号.整场比赛被替换.
隔离问题:执行以下操作会在浏览器中显示"g $ var1",如我所愿.但是,我正在努力获得'&'.
sub(/^&/, "g", param)
Run Code Online (Sandbox Code Playgroud)
我尝试:我用三个反斜杠,因为我认为AWK会先处理成"\&"的,送入sed的,将其解释"\&"为文本"&".我尝试了1到6个反斜杠,但无济于事.
问题:如何逃避&?
1个手册: http://www.staff.science.uu.nl/~oostr102/docs/nawk/nawk_92.html
关于我正在尝试做什么的一些"元"/设计问题(不需要问题!)
我有一堆PHP文件,我正在尝试生成一些文档(结构像Javadocs).我正在使用REGEX和shell脚本进行解析,以便列出函数名称,参数和返回项目.到目前为止,我认为REGEX已经很好地完成了,但我已经阅读了很多关于这是如何不应该使用REGEX的内容.我欢迎任何有关此问题的评论(通常如何生成文档?).多谢你们!
我相信 HTML 读&作“&”字符。在你的 awk 脚本中你可以使用:
sub(/^&/, "&", param)
Run Code Online (Sandbox Code Playgroud)
美元符号param需要用反斜杠转义,例如 &$var 需要写成 &\$var,否则 sed 和 awk 会尝试将 $var 展开为变量。
| 归档时间: |
|
| 查看次数: |
3339 次 |
| 最近记录: |