小编tch*_*ist的帖子

如何计算目录的所有文件中单词的出现次数?

我正在尝试计算整个目录中的特定单词出现次数.这可能吗?

比如说有一个包含100个文件的目录,所有文件的文件中都可能包含"aaa"字样.我如何计算该目录下所有文件中"aaa"的数量?

我尝试过类似的东西:

 zegrep "xception" `find . -name '*auth*application*' | wc -l 
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

unix linux grep count find

50
推荐指数
3
解决办法
8万
查看次数

为什么Java允许控制字符在其标识符中?

在准确探索Java标识符中允许哪些字符时,我偶然发现了一些非常好奇的东西,似乎几乎肯定是一个bug.

我希望发现Java标识符符合以下要求:它们以具有Unicode属性的字符开头,ID_Start后跟具有该属性的字符,并且ID_Continue为前导下划线和美元符号授予例外.事实证明并非如此,而且我发现与我听说过的普通标识符或其他任何其他想法极为不同.

短期演示

请考虑以下演示,证明Java标识符中允许使用ASCII ESC字符(八进制033):

$ perl -le 'print qq(public class escape { public static void main(String argv[]) { String var_\033 = "i am escape: \033"; System.out.println(var_\033); }})' > escape.java
$ javac escape.java
$ java escape | cat -v
i am escape: ^[
Run Code Online (Sandbox Code Playgroud)

不过,情况甚至更糟.实际上,几乎无限恶化.甚至允许NULL!还有数千个甚至不是标识符字符的其他代码点.我在Solaris,Linux和运行Darwin的Mac上测试了这一点,并且都给出了相同的结果.

长演示

这是一个测试程序,它将显示Java非常不允许作为合法标识符名称的一部分的所有这些意外代码点.

#!/usr/bin/env perl
# 
# test-java-idchars - find which bogus code points Java allows in its identifiers
# 
#   usage: test-java-idchars [low high]
#   e.g.:  test-java-idchars 0 255
#
# …
Run Code Online (Sandbox Code Playgroud)

java variables unicode

49
推荐指数
2
解决办法
4789
查看次数

如何将西里尔字符与正则表达式匹配

如何将法语和俄语西里尔字母字符与正则表达式匹配?我只想做字母字符,没有数字或特殊字符.现在我有

[A-ZA-Z]

regex unicode character-properties

47
推荐指数
7
解决办法
6万
查看次数

我想了解@ Html.DisplayFor中的lambda表达式(modelItem => item.FirstName)

我在C#和MVC上相当新,并且在某些场合使用过lambdas,例如匿名方法和LINQ.

通常我看到lambda表达式看起来像这样:

(x => x.Name), (x => { Console.WriteLine(x))
Run Code Online (Sandbox Code Playgroud)

我明白lambda ="去".我从未见过没有使用左参数的lambda表达式.

我不知道如何翻译这个lambda表达式

@Html.DisplayFor(modelItem => item.FirstName)
Run Code Online (Sandbox Code Playgroud)

任何人都可以为我揭开这一点吗?不应该这样

(modelItem => modelItem.FirstName)?
Run Code Online (Sandbox Code Playgroud)

我从Microsoft的ASP.NET MVC入门教程中得到了这个.

c# asp.net-mvc lambda html-helper razor

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

未检测到正则表达式preg_quote符号

我在数据库中有一个发誓单词的字典,以下作品很棒

preg_match_all("/\b".$f."(?:ing|er|es|s)?\b/si",$t,$m,PREG_SET_ORDER);
Run Code Online (Sandbox Code Playgroud)

$t是输入文本,简单地说,$f = preg_quote("punk"); "punk"是来自数据库字典,所以在循环的这一点上表达式如下

preg_match_all("/\bpunk(?:ing|er|es|s)?\b/si",$t,$m,PREG_SET_ORDER);
Run Code Online (Sandbox Code Playgroud)

preg_quote替换符号,例如.#\\#这样的表达是逃过一劫,但如果词典的检查如."F@CK""A$$"与上述表达式输入字符串没有检测到这些符号,我都a$$f@ck在词典中,但它们不工作.如果我删除preg_quote()单词,则正则表达式无效,因为这些符号不会被转义.

有关如何检测的任何建议"a$$"???

编辑:

所以我想那些没有按预期工作的表达将是例如.

preg_match_all("/\bf\@ck(?:ing|er|es|s)?\b/si",$t,$m,PREG_SET_ORDER);
Run Code Online (Sandbox Code Playgroud)

哪个应该找到f @ ck in$t

更新:

这是我的用法,简单地说; 如果有$m替换它们的匹配"\*\*\*\*",则整个块在循环中通过字典中的每个单词,$f是字典单词并且$t是输入

$f = preg_quote($f);
preg_match_all("/\b$f(?:ing|er|es|s)?\b/si",$t,$m,PREG_SET_ORDER);
if (count($m) > 0) {
     $t = preg_replace("/(\b$f(?:ing|er|es|s)?\b)/si","\*\*\*\*\*",$t);
}
Run Code Online (Sandbox Code Playgroud)

更新:看,var_dump:

preg_quote($f) = string(5) "a\$\$"
$t = string(18) "You're such an a$$"
expression = string(29) …
Run Code Online (Sandbox Code Playgroud)

php regex profanity preg-match

35
推荐指数
2
解决办法
2897
查看次数

计算另一个(Perl)内的字符串出现次数

计算某个字符串出现在较大字符串中的次数的最快方法是什么?我最好的猜测是用任何东西替换该字符串的所有实例,计算长度的差异并除以子字符串的长度,但这似乎相当慢,我需要分析大量数据.

regex perl substring

34
推荐指数
4
解决办法
8万
查看次数

Java中的字节和字符转换

如果我将一个角色转换为byte然后再回到char那个角色,那个角色会神秘地消失并成为别的东西.这怎么可能?

这是代码:

char a = 'È';       // line 1       
byte b = (byte)a;   // line 2       
char c = (char)b;   // line 3
System.out.println((char)c + " " + (int)c);
Run Code Online (Sandbox Code Playgroud)

一直到第2行一切都很好:

  • 在第1行,我可以在控制台中打印"a",它会显示"È".

  • 在第2行,我可以在控制台中打印"b",它会显示-56,即200,因为字节已签名.200是"È".所以它仍然很好.

但第3行有什么不对?"c"成为别的东西,程序打印出来? 65480.这是完全不同的东西.

我应该在第3行写什么才能得到正确的结果?

java unicode encoding utf-16

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

Kleene的明星:为什么$ _ ="a"; s/a*/e/g产生:ee

a* 意味着零个或多个实例:权利?

那么为什么会$_ = "a"; s/a*/e/g产生:ee

可能的答案:它正在替换字符串:"a"with:"e",它正在替换空字符串:""with:"e".或者它正在取代仅仅缺少一封信:a带有一封信:e或它取代了"零次出现":a与:e

好的,但是:

$_ = "b"; s/a*/e/g 生产: ebe

这似乎是在更换空字符串左:b空字符串的权利:b

好.但那为什么不这样做:" a"?为什么它不更换空字符串的左:a空字符串的右侧:和的信:一个本身得到:eee

有几个零次出现:a左侧是右侧!

regex perl

31
推荐指数
3
解决办法
1038
查看次数

将不间断空格转换为Ruby中的空格

我有一些情况,\u00a0当编码为utf-8 json时,来自html textarea或输入的用户输入数据有时会发送(非中断空格)而不是空格.

我认为这是Firefox中的一个错误,因为我知道用户不是故意放入不间断的空格而不是空格.

Ruby中还有两个错误,其中一个可以用来对抗另一个.

无论出于何种原因\s不匹配\u00a0.

但是[^[:print:]],这绝对不应该匹配)并且\xC2\xA0两者都匹配,但我认为那些是不太理想的方式来处理这个问题.

是否有其他建议可以解决这个问题?

ruby unicode whitespace json utf-8

27
推荐指数
3
解决办法
9123
查看次数

全局符号需要显式包名称

全局符号需要显式包名吗?为什么会发生这种情况以及可能导致此错误的各种情况?

perl

27
推荐指数
3
解决办法
7万
查看次数