Tag: expression式

如何用新行replace所有的XHTML / HTML换行符(<br>)?

我正在寻找最好的br2nl函数。 我想用换行符replace所有的<br>和<br />实例。 非常像nl2br()函数,但相反。 我知道在PHP手册评论中有几个解决scheme,但我正在从SO社区寻求有关可能解决scheme的反馈。

在Ruby中从string创build一个不区分大小写的正则expression式

比方说,我有一个任意的string `A man + a plan * a canal : Panama!` 我想做一个正则expression式search除了大小写以外的string。 也就是说,这个正则expression式应该匹配string `a man + A PLAN * a canal : PaNaMa!` 我认为最好的方法是在Ruby正则expression式中以反斜杠转义每个具有特殊含义的字符,然后使用该string和Regexp::IGNORECASE作为参数执行Regexp.new 。 是对的吗? 有没有一个尝试和真正的正则expression式转换任意string到文字正则expression式? 顺便说一下,我最终希望使用这个正则expression式来执行任意的不区分大小写的MongoDB查询。 所以如果还有其他方法可以做,请让我知道。

使用下划线validation用户名为字母数字

在我的注册页面上,我需要validation的用户名只有字母数字,但也可选的下划线。 我已经想出了这个: function validate_alphanumeric_underscore($str) { return preg_match('/^\w+$/',$str); } 这似乎工作正常,但我不是一个正则expression式专家! 有没有人发现任何问题?

如何在Perl中replace现有文件中的string?

我想在名为1_classification.dat,2_classification.dat等的所有文本文件中将“blue”replace为“red”。 我想编辑相同的文件,所以我试过这个代码,但它不起作用。 我哪里错了? @files=glob("*_classification.dat"); foreach my $file (@files) { open(IN,$file) or die $!; <IN>; while(<IN>) { $_='~s/blue/red/g'; print IN $file; } close(IN) }

使用Python的string.replace与re.sub

对于Python string.replace ,我应该使用string.replace还是re.sub进行基本的文本replace? 在PHP中,这是明确表示,但我找不到类似的Python注释。

用于检查string是否严格字母数字的正则expression式

我怎样才能检查一个string是否只包含数字和字母,即。 是字母数字?

正则expression式(C#):用\ r \ nreplace\ n

如何使用C#中的正则expression式,用\ r \ n(LF单独使用CRLF)replace\ n的单独实例? 对不起,如果这是一个愚蠢的问题,我是新来的正则expression式。 我知道要使用计划String.Replace ,如: myStr.Replace("\n", "\r\n"); myStr.Replace("\r\r\n", "\r\n"); 然而,这是不雅的,并会破坏文本中的任何“\ r + \ r \ n”(尽pipe它们不可能存在)。

正则expression式来匹配一个IP地址

我是正则expression式的新手,我想用preg_match函数来查找一个string是否是一个IP地址。 例如,如果$string = "45.56.78.222"或类似的东西, preg_match($regex, $string)应该返回true。 那么, $regex应该是什么?

正则expression式匹配有效的正则expression式

有没有正则expression式匹配有效的正则expression式? (我知道有几种正则expression式,其中一种可以。)

Ruby lookbehind断言(1.9 / 2.0)有错误吗?

为什么不正则expression式(?<=fo).*匹配foo (而(?<=f).* )? "foo" =~ /(?<=f).*/m => 1 "foo" =~ /(?<=fo).*/m => nil 这似乎只发生在单线模式打开(点匹配换行); 没有它,一切都OK: "foo" =~ /(?<=f).*/ => 1 "foo" =~ /(?<=fo).*/ => 2 testingRuby 1.9.3和2.0.0。 在Rubular上看到它 编辑:更多观察: 添加一个行尾锚点不会改变任何东西: "foo" =~ /(?<=fo).*$/m => nil 但是与一个懒惰的量词一起,它“起作用”: "foo" =~ /(?<=fo).*?$/m => 2 编辑:还有一些观察: .+与其等同的{1,} , 但只在Ruby 1.9中 (似乎这是这种情况下两者之间唯一的行为差异): "foo" =~ /(?<=fo).+/m => 2 "foo" =~ /(?<=fo).{1,}/ […]