- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想要 java 中的多行字符串,所以我寻求一个简单的预处理器来将 C 风格的多行转换为带有文字 '\n' 的单行。
之前:
System.out.println("convert trailing backslashes\
this is on another line\
\
\
above are two blank lines\
But don't convert non-trailing backslashes, like: \"\t\" and \'\\\'");
之后:
System.out.println("convert trailing backslashes\nthis is on another line\n\n\nabove are two blank lines\nBut don't convert non-trailing backslashes, like: \"\t\" and \'\\\'");
我认为 sed
会做得很好,但是 sed 是基于行的,所以替换 '\' 和它后面的换行符(有效地连接两行)在 sed 中不是很自然.我改编了sredden79's oneliner到以下 - 它有效,它很聪明,但不清楚:
sed ':a { $!N; s/\\\n/\\n/; ta }'
替代品是 escaped literal backslash
,newline
和 escaped literal backslash
,n
。 :a
是标签,ta
是 goto 标签,如果替换找到匹配项; $
表示最后一行,而 $!
则相反(即除最后一行以外的所有行)。 N
表示将下一行附加到模式空间(从而使 \n
字符可见。)
编辑这里有一个保持编译器错误行号等准确的变体:它将每个扩展行转换为 "..."+\n
(并正确处理字符串的第一行和最后一行) :
sed ':a { $!N; s/\\\n/\\n"+\n"/; ta }'
给予:
System.out.println("convert trailing backslashes\n"+
"this is on another line\n"+
"\n"+
"\n"+
"above are two blank lines\n"+
"But don't convert non-trailing backslashes, like: \"\t\" and \'\\\'");
编辑 实际上,Perl/Python 风格的多行会更好,它在一行中以特殊代码开始和结束(我认为是 python 的“"”)。
有没有更简单、更明智、更清晰的方法(也许不使用 sed)?
最佳答案
Is there a simpler, saner, clearer way.
忘记预处理器,接受限制,提示它(这样它可能会在 Java 7 或 8 中得到修复),并且 use an IDE to ease the pain .
其他选择(我想太麻烦了,但总比搞乱编译过程好):
关于perl - 用\n 替换尾部反斜杠\n 的最清晰方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2227116/
我有一个右下角倾斜的元素,我必须在其上放置一个盒子阴影。有时倾斜的 Angular 被徽章覆盖 - 我的问题不适用,如果是这样的话: 这是信息框及其边 Angular 的 (s)css 部分(还有更多
是否可以在纯 html/css 中创建类似下面的内容? 我想做这个响应式和全 (100%) 宽度(最大左 Angular 100 像素,右边最小 50 像素,类似的东西)。 最佳答案 您可以通过转换(
如何在 fabricjs 文本中为文本提供渐变或斜 Angular 效果?? http://fabricjs.com/fabric-intro-part-2/ 这里给出了形状和所有示例,我将其与文本绑
我用过: http://apps.eky.hk/css-triangle-generator/ 为彼此对 Angular 放置的两个不等边三 Angular 形生成 css: 左下三 Angular
我是一名优秀的程序员,十分优秀!