小编Che*_*eso的帖子

SQL字符字段串联(不使用CONCAT()或+)

我试图将3个[char(32)]字段:

title1
title2
title3连接

到一个字段中,但问题是我使用的是旧版本的SQL,它不支持CONCAT()子例程或+运算符


例如:
CONCAT(title1,title2,title3)
(title1 + title2 + title3)

不要工作!!!!

还有另外一种方法吗?

sql string informix concat concatenation

5
推荐指数
1
解决办法
3万
查看次数

如何使用Perl将冒号放入字符串中最后两个字符?

我正在尝试找到一种方法将冒号(:)放入一个字符串中,字符串末尾有两个字符.

$ meetdays的示例:
1200 => 12:00
900 => 9:00
1340 => 13:40

不确定这应该是正则表达式还是我不知道的另一个函数.

string perl

5
推荐指数
2
解决办法
2141
查看次数

抑制find&grep"无法打开"输出

用户phi给了我这个语法

find . | awk '!/((\.jpeg)|(\.jpg)|(\.png))$/ {print $0;}' | xargs grep "B206"
Run Code Online (Sandbox Code Playgroud)

我想压缩grep的输出:无法打开.....并找到:无法从结果中打开行.

要忽略的示例输出:

grep: can't open ./cisc/.xdbhist
find: cannot open ./cisc/.ssh
Run Code Online (Sandbox Code Playgroud)

unix grep filtering find

5
推荐指数
2
解决办法
1万
查看次数

SQL - 将24小时("军事")时间(2145)转换为"上午/下午时间"(晚上9:45)

我有2个我正在使用的字段存储为smallint军事结构化时间.
编辑我在IBM Informix Dynamic Server Version 10.00.FC9上运行

beg_tm和end_tm

样本值

beg_tm   545
end_tm   815

beg_tm   1245
end_tm   1330
Run Code Online (Sandbox Code Playgroud)

样本输出

beg_tm   5:45 am
end_tm   8:15 am

beg_tm   12:45 pm
end_tm   1:30 pm
Run Code Online (Sandbox Code Playgroud)

我在Perl中使用它,但我正在寻找一种方法来使用SQL和case语句.

这甚至可能吗?


编辑

实质上,此格式必须在ACE报告中使用.我找不到使用简单块的输出部分格式化它的方法

if(beg_tm>=1300) then
beg_tm = vbeg_tm - 1200
Run Code Online (Sandbox Code Playgroud)

其中vbeg_tm是声明的char(4)变量


编辑 这个工作时间> = 1300(除了2230 !!)

select substr((beg_tm-1200),0,1)||":"||substr((beg_tm-1200),2,2) from mtg_rec where beg_tm>=1300;
Run Code Online (Sandbox Code Playgroud)

这工作时间<1200(有时...... 10:40失败)

select substr((mtg_rec.beg_tm),0,(length(cast(beg_tm as varchar(4)))-2))||":"||(substr((mtg_rec.beg_tm),2,2))||" am" beg_tm from mtg_rec where mtg_no = 1;
Run Code Online (Sandbox Code Playgroud)


编辑
Jonathan Leffler表达方法中使用的转换语法的变体

SELECT  beg_tm,
        cast((MOD(beg_tm/100 + 11, 12) + 1) as …
Run Code Online (Sandbox Code Playgroud)

sql formatting informix datetime

5
推荐指数
1
解决办法
3万
查看次数

Perl - 我可以获得与脚本所在位置以及脚本执行位置相关的路径吗?

我正在寻找获得两条信息的方法:

  • 脚本所在的完整路径,包括其文件名
  • 执行脚本的完整路径

我知道你可以$0用来获取文件名,但是有任何其他保留的Perl原生变量会给我我想要的东西吗?

我宁愿不使用任何特殊模块,但如果它是唯一的方法,那就这样吧.

directory perl filenames path reserved-words

5
推荐指数
2
解决办法
3245
查看次数

如何在使用'strict'时避免产生此错误?

如果use strict;被注释掉的话,我有几行代码可以工作.但是,我不希望因为一个小部分而禁用整个脚本.

我需要重新编码,或以某种方式use strict;暂时禁用,然后重新启用它.第一个选项更现实,但我不知道如何更改代码以在严格模式下工作.

my ($ctc_rec_ref) = get_expected_contacts($ctc,$fy);

my @expected_ctc_rec = @$ctc_rec_ref;

print $expected_ctc_rec[0][0]."\n";
print $expected_ctc_rec[0][1]."\n";
print $expected_ctc_rec[0][2]."\n";

sub get_expected_contacts
{
    my (@ctc_rec,$i) = ((),0);
    $STMT = "SELECT DISTINCT field1, field2, field3 FROM table WHERE field4 = ? AND field5 = ? AND field6 = 'E'";
    $sth = $db1->prepare($STMT); $sth->execute(@_); 
    while(@results = $sth->fetchrow_array())
    {
        push @{ $ctc_rec[$i] }, $results[0];
        push @{ $ctc_rec[$i] }, $results[1];
        push @{ $ctc_rec[$i] }, $results[2];

        $i++;
    }   
    return (\@ctc_rec);
}
Run Code Online (Sandbox Code Playgroud)


随着use …

arrays perl strict multidimensional-array

5
推荐指数
2
解决办法
1586
查看次数

如何在Perl中将人的全名解析为用户名?

我需要将Parisi,Kenneth格式的名称转换为kparisi格式.

有谁知道如何在Perl中这样做?

以下是一些异常的示例数据:

Zelleb,Charles F.,, IV
Eilt,John ,, IV Wods,
Charles R.,, III
Welkt,Craig P.,, Jr.

这些特定的名称最终应该是czelleb,jeilt,cwoods,cwelkt等.


我还有一个条件正在破坏我的名字建设者

奥尼尔,保罗

到目前为止,当奇怪/腐败的名字在混合中时,Vinko Vrsalovic的答案是最好的,但上面的这个例子将作为"pneil"出现......如果我不能在p和n之间得到那个,那么我会被判断为低于犹大

string perl parsing substring

4
推荐指数
2
解决办法
872
查看次数

使用"cout" - C++在Windows对话框中显示消息

可以使用cout语法显示Windows消息框吗?

我还需要压缩/隐藏命令提示符窗口.

有一些方法可以调用消息框功能并通过其用法显示文本,但这里的主要约束是必须使用cout语法.

cout <<  "message";
Run Code Online (Sandbox Code Playgroud)

我想在cout输出中调用VB msgbox命令,但找不到任何有用的东西.

有任何想法吗?

c++ windows cout messagebox

4
推荐指数
4
解决办法
2万
查看次数

如何使用Perl在目录及其所有子目录中找到最新的.pl文件?

如何扫描整个目录的内容,包括其子目录的内容,并.pl使用Perl 查找其中的最新文件?

我想构建.pl一个目录树中所有文件的完整文件路径的排序数组/列表.

因此,例如,如果我的基本目录是/home/users/cheeseconqueso/我想搜索.pl该目录中的文件和该路径中的任何子目录,然后.pl按日期对文件进行排序.

最终结果将是一个数组@pl_paths,在哪里$pl_paths[0]会是这样的/home/users/cheeseconqueso/maybe_not_newest_directory/surely_newest_file.pl

从那个结果来看,我想要执行该文件,但是我认为一旦我找到排序的数组,执行文件$pl_paths[0],就不会有问题了.

有一个类似的问题,我一直试图修改,以满足我的需要,但我现在在这里显而易见的原因.

我用来在一个目录中获取最新文件NAME的代码是:

opendir(my $DH, $DIR) or die "Error opening $DIR: $!";
my %files = map { $_ => (stat("$DIR/$_"))[9] } grep(! /^\.\.?$/, readdir($DH));
closedir($DH);
my @sorted_files = sort { $files{$b} <=> $files{$a} } (keys %files);
print $sorted_files[0]."\n";
Run Code Online (Sandbox Code Playgroud)

directory perl path file-search datecreated

4
推荐指数
2
解决办法
1634
查看次数

PHP - preg_match()

好吧,所以我希望用户能够输入AZ中的每个字符和0-9中的每个数字,但我不希望它们输入"特殊字符".

码:

if (preg_match("/^[a-zA-Z0-9]$/", $user_name)) {
    #Stuff
}
Run Code Online (Sandbox Code Playgroud)

它如何检查给定的所有字符,然后检查它们是否匹配?我试过了preg_match_all(),但我并没有真正理解它.

就像用户输入"FaiL65Mal"一样,我希望它允许它继续前进.但如果他们输入"Fail {] ^ 7(,",我希望它出现错误.

php regex preg-match

4
推荐指数
1
解决办法
1万
查看次数