在Perl6中,不间断空间被认为是空间,所以
say 'Perl 6' ~~ / / # Please understand there's a no-break space in the middle
Run Code Online (Sandbox Code Playgroud)
产生
Null regex not allowed
Run Code Online (Sandbox Code Playgroud)
解决方案是引用字符,就像这样
say 'Perl 6' ~~ / ' ' / ; # OUTPUT: «? ??»
Run Code Online (Sandbox Code Playgroud)
但是,如果要在字符类中包含不间断的空格,则不起作用:
$str ~~ /<[ & < > " ' { ]>/ )
Run Code Online (Sandbox Code Playgroud)
我可以使用Zs,这是一个空间分隔符,但那个似乎更广泛......还有其他方式吗?引用也无济于事.问题是,我应该在那里使用什么角色类?
msc*_*cha 11
尝试:
$str ~~ /<[ & < > " ' { \xA0 ]>/
Run Code Online (Sandbox Code Playgroud)
或更具可读性:
$str ~~ /<[ & < > " ' { \c[NO-BREAK SPACE] ]>/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
104 次 |
| 最近记录: |