Tag: expression式

Unicode Regex; 无效的XML字符

有效的XML字符列表是众所周知的,按照规范定义: #x9 | #xA | #xD | [#x20-#xD7FF] | [#xE000-#xFFFD] | [#x10000-#x10FFFF] 我的问题是,如果不使用Unicode常规类别实际编码代码点,是否有可能为此(或其反转)生成PCRE正则expression式。 除了不正确地覆盖了换行符和制表符以及其他一些无效字符之外,倒数可能是类似[\ p {Cc} \ p {Cs} \ p {Cn}]的东西。

RegEx查找两个或更多连续的字符

我需要确定一个string是否包含两个或多个连续的字符。 两个或更多[a-zA-Z]并排。 例: "ab" -> valid "a1" -> invalid "ab" -> invalid "a"-> invalid "a ab" -> valid "11" -> invalid

如何在Perlreplace运算符的replace侧使用variables?

我想要做以下事情: $find="start (.*) end"; $replace="foo \1 bar"; $var = "start middle end"; $var =~ s/$find/$replace/; 我希望$ var包含“foo中间栏”,但它不起作用。 也不: $replace='foo \1 bar'; 不知何故,我失去了一些有关逃跑。 我修复了失踪的'

在vim中执行非正则expression式search/replace

当在vim中进行search/replace时,我几乎不需要使用正则expression式,所以不断地逃避一切都是一个痛苦,有没有办法使它默认不使用正则expression式或有一个替代的命令来完成这个? 作为一个例子,如果我想用< ,我想只能inputs/</&lt;/g而不是s/\</\&lt\;/g

正则expression式只有数字和点或逗号

我需要一个正则expression式来validationtwo or one数字,或者. 并再次two or one数字。 所以,这些是有效的input: 11,11 11.11 1.1 1,1

将对象从MemberExpression中取出?

所以,可以说我在C#中有以下expression式: Expression<Func<string>> expr = () => foo.Bar; 我如何提取foo的引用?

我应该使用\ d还是匹配Perl正则expression式中的数字?

在过去几个星期阅读了一些问题/答案之后,我发现在perl正则expression式中使用\d是不正确的。 由于perl \d的后面版本与[0-9] ,因为\d将表示具有数字属性的任何Unicode字符,并且[0-9]表示字符'0','1 ','2',…,'9'。 我明白,在某些情况下[0-9]是正确的使用方法,而在其他情况下则是。 我想知道哪些人觉得是正确的默认使用? 就我个人而言,我发现\d符号非常简洁和expression,而比较[0-9]则有些麻烦。 但是我很less有多语言代码的经验,或者说编码不符合ASCII字符范围的语言,因此可能太天真了。 我注意到 $find /System/Library/Perl/5.8.8/ -name \*pm | xargs grep '\\d' | wc -l 298 $find /System/Library/Perl/5.8.8/ -name \*pm | xargs grep '\[0-9\]' | wc -l 26

为什么replaceAll失败与“非法组参考”?

我需要更换 \\\s+\\$\\$ to $$ 我用了 String s = " $$"; s = s.replaceAll("\\s+\\$\\$","$$"); 但它会抛出exception java.lang.IllegalArgumentException:非法组引用

在sed中插入换行(Mac OS X)

如何在sed的replace部分插入换行符? 此代码不起作用: sed "s/\(1234\)/\n\1/g" input.txt > output.txt 其中input.txt是: test1234foo123bar1234 和output.txt应该是: test 1234foo123bar 1234 但是我感到这个: testn1234foo123barn1234 注意: 这个问题特别是关于“sed”的Mac OS X版本,社区已经注意到它的行为与Linux版本不同。

如何在C#expression式树中设置字段值?

鉴于: FieldInfo field = <some valid string field on type T>; ParameterExpression targetExp = Expression.Parameter(typeof(T), "target"); ParameterExpression valueExp = Expression.Parameter(typeof(string), "value"); 如何编译一个lambdaexpression式来将“target”参数中的字段设置为“value”?