有没有人有一个代码示例用于unicode感知字符串程序?编程语言并不重要.我想要一些与unix命令"strings"基本相同的东西,但它也可以在unicode文本(UTF-16或UTF-8)上运行,拉动英语字符和标点符号的运行.(我只关心英文字符,而不是任何其他字母).
谢谢!
我正在尝试找到一个在perl webapp中大写名称的解决方案(使用perl v5.10.1).我原本以为使用Lingua :: EN :: NameCase,但我看到了重音字符的一些问题.
我需要能够处理来自各种欧洲语言(爱尔兰语,法语,德语)的重音字符.
我在网上看到一些迹象表明Lingua :: EN :: NameCase应该适用于我的用例.例如,perlmonks上的这个页面:http://www.perlmonks.org/?node_id = 889135
这是我基于以上链接的测试代码:
#!/usr/bin/perl
use strict;
use warnings;
use Lingua::EN::NameCase;
use locale;
use POSIX qw(locale_h);
my $locale = 'en_FR.utf8';
setlocale( LC_CTYPE, $locale );
binmode DATA, ':encoding(UTF-8)';
binmode STDOUT, ':encoding(UTF-8)';
while (my $original_name = <DATA>) {
chomp $original_name;
my $normalized_name = nc($original_name);
printf "%30s L::EN::NC %30s UCFIRST %30s\n", $original_name, $normalized_name, xlc($original_name);
}
sub xlc {
my $str = shift;
$_ = lc( $str );
return join …
Run Code Online (Sandbox Code Playgroud) 我现在用的是grep
一个二进制文件的命令(-a
包括标志),并希望的输出--binary-offset
或-b
标志不实际打印的比赛,因为二进制数据是没用的,我并导致终端出现异常(我的猜测是,终端将一些二进制解释为终端命令).
目前,我正在使用命令:
dd ... 2>/dev/null | grep -abFf - file_to_search
grep中的二进制字符串(结果dd
)infile_to_search
输出如下:
offset:[large string of binary characters]
如何只打印偏移量(没有大的二进制字符串)?
我编写了以下Perl脚本(如下所示)以创建简单的XML文件.生成的输出有效,但我对生成的XML源代码有特定的格式要求.
如何更改我的脚本以添加我想要的空白?
#!/usr/bin/perl
use warnings;
use XML::LibXML;
my $doc = XML::LibXML::Document->new;
my $root = $doc->createElement('LEVEL1');
$doc->setDocumentElement($root);
my $system = $doc->createElement('LEVEL2');
$root->appendChild($system);
my $install = $doc->createElement('LEVEL3');
$system->appendChild($install);
print $doc->toString;
Run Code Online (Sandbox Code Playgroud)
脚本输出:
<?xml version="1.0"?>
<LEVEL1><LEVEL2><LEVEL3/></LEVEL2></LEVEL1>
Run Code Online (Sandbox Code Playgroud)
期望的输出:
<?xml version="1.0"?>
<LEVEL1>
<LEVEL2>
<LEVEL3/>
</LEVEL2>
</LEVEL1>
Run Code Online (Sandbox Code Playgroud)