this问题的另一面。 当我尝试替换组合字符的一部分时,默认情况下Perl 6不会拆分它。
@Component({
moduleId: module.id,
selector: 'selector',
templateUrl: 'template.html',
styleUrls: ['template.component.css'],
styles: [`
:host {
display: inline-block;
border: 1px solid black;
}
`]
})
如何(暂时)关闭此默认值,以便能够匹配单个Unicode符号,而不是组合的符号?
以下是my $p_macron = "p" ~ 0x0304.chr;
say $p_macron; # "p̄"
(my $a_macron = $p_macron) ~~ s/p/a/;
say $a_macron; # OOPS, again "p̄"
中的完成方式。
bash
答案 0 :(得分:4)
sed
不适用于Unicode代码点,它适用于字节,因此当它被赋予p̄
时,它会看到0x<0070 0304>
而Perl 6正确地将其视为一个字形,并对其进行处理因此。这意味着s/p/a/
绝不会做任何事情,因为p
与p̄
不匹配。
您本可以尝试s:ignoremark/p/a/
(:m
),它会给您a
,
或者s:samemark/p/a/
(:mm
)会给你ā