- 论坛徽章:
- 0
|
本帖最后由 brant_chen 于 2010-10-12 15:11 编辑
我有这样的字符串:
- my $chs = "正在停止 123 作业";
- my $eng = "Suspend 123 jobs";
- my $job;
- if ($eng =~ m/(\d+)\s+\w+/) { # 晕死,不好意思,这里应该是 if ($eng =~ m/\s+(\d+)\s+/) {, 这样就可以了
- $job = $1;
- }
- print "chs job:" . $job . "\n";
- if ($eng =~ m/\s+(\d+)\s+\w+/) {
- $job = $1;
- }
- print "eng job:" . $job . "\n";
复制代码 问题:
1. chs job 为什么老是打印出来是空的呢? (参加代码中的注释)
2. 对于英文字符串,为什么if ($eng =~ m/\w+\s+(\d+)\s+\w+/) { 和 if ($eng =~ m/\s+(\d+)\s+/) { 效果是一样的呢? (欢迎大家解答,谢谢,我会下来查下资料)
3. 以后还要匹配日文字符串中的 数字, 希望能提供一个可以通吃的正则表达式,谢谢! (改成注释中的语句后,已经通吃了哈哈)
请大虾指教,谢谢!(临时需要,所以就没有时间查资料了,问题太简单了无怪哈) |
|