我通常使用简单的引号,但有时我会得到很长的行,我无法中断并且还需要使用转义字符,所以我得到如下内容:
my $str = "select query_accession,query_tag,hit_accession,hit_tag,significance from summaryTables where query_id = \'$query_id\';"
我知道 Perl 中还有多种其他表示字符串的方法。你会推荐什么?
UPDATE感谢大家对 SQL 相关的建议。我学到了一些有价值的东西,但是,我的问题仍然存在(作为一个一般问题,无论 SQL 如何):是否有一些运算符允许引用而不捕获换行符?
我现在做的是这样的:
my $str = "123 123 456 sdndfnd sdfdmd " .
"dfsdjkfs 343489 dfjsdj 3 34kdfsk kd " .
"fd kd9534 rfg 546 5";
这是相当难看的。
我喜欢这里的文档,尽管有些人鄙视它们,因为无论您的缩进级别如何,终止符都必须出现在行的开头。
my $str = <<"SQL";
SELECT
query_accession,
query_tag,
hit_accession,
hit_tag,
significance
FROM
summaryTables
WHERE
query_id = ?
SQL
Perl v5.26 推出此处缩进文档 https://www.effectiveperlprogramming.com/2016/12/strip-leading-spaces-from-here-docs-with-v5-26/,就像 Ruby 一样。这看起来几乎是一样的,如果 StackOverflow 没有搞乱格式,你应该会看到最终的结果SQL
标记不像前面的示例那样左对齐:
my $str = <<~'SQL';
SELECT
query_accession,
query_tag,
hit_accession,
hit_tag,
significance
FROM
summaryTables
WHERE
query_id = ?
SQL
我还喜欢格式化 SQL,这样我就可以轻松地看到语句中的结构,但这是个人风格。你可能喜欢一些不同的东西。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)