小编tch*_*ist的帖子

如何在另一个目录中解压缩tar.gz

我有一个档案

与*.tar.gz

如何在目标目录中解压缩?

unix gzip tar

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

Java正则表达式中\ w和\ b的Unicode等价物?

许多现代正则表达式实现将\w字符类简写解释为"任何字母,数字或连接标点符号"(通常为下划线).这样一来,像一个正则表达式\w+像火柴的话hello,élève,GOÄ_432gefräßig.

不幸的是,Java没有.在Java中,\w仅限于[A-Za-z0-9_].这使得像上述那些匹配的单词难以解决.

似乎\b单词分隔符在不应该的位置匹配.

什么是类似.NET,Unicode感知\w\bJava 的正确等价物?哪些其他快捷方式需要"重写"以使其具有Unicode感知功能?

java regex unicode character-properties

124
推荐指数
3
解决办法
6万
查看次数

是否可以在文件名中使用"/"?

我知道这不是应该做的事情,但有没有办法使用斜杠字符,通常在Linux中分隔文件名中的目录?

unix linux directory filenames slash

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

如何可靠地猜测MacRoman,CP1252,Latin1,UTF-8和ASCII之间的编码

在工作中似乎没有一周没有一些编码相关的conniption,灾难或灾难.这个问题通常来自程序员,他们认为他们可以在不指定编码的情况下可靠地处理"文本"文件.但你不能.

因此,已经决定从此以后禁止文件的名称以*.txt或结尾*.text.我们的想法是,这些扩展误导了偶然程序员对编码的沉闷,这会导致处理不当.没有任何扩展几乎会更好,因为至少你知道你不知道你有什么.

但是,我们并不是那么远.相反,您将需要使用以编码结尾的文件名.因此,对于文本文件,例如,这些会是这样README.ascii,README.latin1,README.utf8,等.

对于需要特定扩展的文件,如果可以在文件本身内部指定编码,例如在Perl或Python中,那么您应该这样做.对于像Java源这样的文件,文件内部不存在这样的工具,你将把编码放在扩展名之前,例如SomeClass-utf8.java.

对于输出,UTF-8是非常优选的.

但是对于输入,我们需要弄清楚如何处理我们的代码库中的数千个文件*.txt.我们想重命名所有这些以符合我们的新标准.但我们不可能全都注意它们.所以我们需要一个真正有效的库或程序.

它们有各种ASCII,ISO-8859-1,UTF-8,Microsoft CP1252或Apple MacRoman.虽然我们知道我们可以判断某些东西是否为ASCII,并且我们知道某些东西是否可能是UTF-8,但我们对8位编码感到困惑.因为我们在混合的Unix环境(Solaris,Linux,Darwin)中运行,大多数桌面都是Mac,所以我们有很多烦人的MacRoman文件.这些尤其是一个问题.

一段时间以来,我一直在寻找一种方法来以编程方式确定哪一个

  1. ASCII
  2. ISO-8859-1
  3. CP1252
  4. 的MacRoman
  5. UTF-8

文件在,我还没有找到一个程序或库,可以可靠地区分这三种不同的8位编码.我们可能单独拥有超过一千个MacRoman文件,因此我们使用的任何字符集检测器都必须能够嗅出它们.我看过的任何东西都无法解决问题.我对ICU字符集检测器库寄予厚望,但它无法处理MacRoman.我也看过模块在Perl和Python中做同样的事情,但一次又一次它总是相同的故事:不支持检测MacRoman.

我正在寻找的是一个现有的库或程序,它可靠地确定文件所在的五种编码中的哪一种 - 并且最好不止于此.特别是它必须区分我引用的三个3位编码,尤其是MacRoman.这些文件的英文文本超过99%; 其他语言中有一些,但并不多.

如果它是库代码,我们的语言首选项是它在Perl,C,Java或Python中,并按此顺序.如果它只是一个程序,那么我们并不关心它是什么语言,只要它是完整的源代码,在Unix上运行,并且完全不受阻碍.

有没有其他人有这个随机编码的遗留文本文件的问题?如果是这样,你是如何尝试解决它的,你有多成功?这是我的问题中最重要的方面,但我也对你是否认为鼓励程序员用这些文件所在的实际编码来命名(或重命名)他们的文件感兴趣,这将有助于我们避免将来出现这个问题.曾经尝试过任何人强制执行该体制的基础上,如果是的话,是成功与否,为什么?

是的,我完全明白为什么鉴于问题的性质,人们无法保证给出明确的答案.对于小文件尤其如此,您没有足够的数据可供使用.幸运的是,我们的文件很少.除随机README文件外,大多数的大小范围为50k到250k,而且许多都更大.任何超过几K的东西都保证是英文的.

问题领域是生物医学文本挖掘,因此我们有时处理广泛且极大的语料库,就像所有PubMedCentral的Open Access资源库一样.一个相当庞大的文件是BioThesaurus 6.0,为5.7千兆字节.这个文件特别烦人,因为它几乎都是UTF-8.但是,我相信,有些numbskull会在其中插入几行8位编码 - 微软CP1252.在你旅行之前需要一段时间.:(

python java macos perl character-encoding

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

确定侦听某个端口的进程pid

正如标题所说,我正在运行多个游戏服务器,并且每个游戏服务器都具有相同name但不同PIDport数量.我想匹配PID正在侦听某个端口的服务器,然后我想杀死这个进程.我需要它来完成我的bash脚本.

这甚至可能吗?因为它没有在网上找到任何解决方案.

unix port freebsd pid

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

正则表达式:什么是InCombiningDiacriticalMarks?

以下代码是众所周知的将重音字符转换为纯文本:

Normalizer.normalize(text, Normalizer.Form.NFD).replaceAll("\\p{InCombiningDiacriticalMarks}+", "");
Run Code Online (Sandbox Code Playgroud)

我用这个替换了我的"手工制作"方法,但我需要理解replaceAll的"正则表达式"部分

1)什么是"InCombiningDiacriticalMarks"?
2)文件在哪里?(和类似的?)

谢谢.

java regex unicode

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

使用FileWriter(Java)以UTF-8编写文件?

我有以下代码,但我希望它写为UTF-8文件来处理外来字符.有没有办法做到这一点,是否需要有一个参数?

我非常感谢你对此的帮助.谢谢.

try {
  BufferedReader reader = new BufferedReader(new FileReader("C:/Users/Jess/My Documents/actresses.list"));
  writer = new BufferedWriter(new FileWriter("C:/Users/Jess/My Documents/actressesFormatted.csv"));
  while( (line = reader.readLine()) != null) {
    //If the line starts with a tab then we just want to add a movie
    //using the current actor's name.
    if(line.length() == 0)
      continue;
    else if(line.charAt(0) == '\t') {
      readMovieLine2(0, line, surname.toString(), forename.toString());
    } //Else we've reached a new actor
    else {
      readActorName(line);
    }
  }
} catch (IOException e) {
  e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

java unicode file-io file-format utf-8

74
推荐指数
6
解决办法
12万
查看次数

否定前瞻正则表达式

我希望匹配以".htm"结尾的所有字符串,除非它以"foo.htm"结尾.我对正则表达式一般都很体面,但负面的前瞻让我难过.为什么这不起作用?

/(?!foo)\.htm$/i.test("/foo.htm");  // returns true. I want false.
Run Code Online (Sandbox Code Playgroud)

我应该用什么呢?我想我需要一个"负面看后面 "的表达式(如果JavaScript支持这样的东西,我知道它没有).

javascript regex regex-lookarounds

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

正则表达式:可选字符出现零次或多次

什么是正则表达式模式:

零个或多个字符出现 /

regex

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

Python正则表达式匹配Unicode属性

Perl和其他一些当前的正则表达式引擎在正则表达式中支持Unicode属性,例如类别.例如,在Perl中,您可以使用\p{Ll}匹配任意小写字母或p{Zs}任何空格分隔符.在Python的2.x和3.x行中都没有看到对此的支持(有应有的遗憾).是否有人意识到获得类似效果的好策略?欢迎本土解决方案.

python regex unicode ucd character-properties

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