Tag: expression式

在多行分割Ruby正则expression式

这可能不是你期望的问题! 我不想要一个正则expression式匹配的正则expression式; 相反,我想写一个长的正则expression式,为了便于阅读,我想分割成多行代码。 就像是: "bar" =~ /(foo| bar)/ # Doesn't work! # => nil. Would like => 0 可以这样做吗?

Notepad ++非贪婪的正则expression式

Notepad ++是否支持非贪婪的正则expression式? 例如对于文本: abcxadc 我想要使​​用模式获取零件: a.+c 现在我得到整个string,而不是2部分。 我试图用'?' 但没有成功。

正则expression式收集最后/

我是新来的正则expression式,并想知道如何在最后一个之后收集所有东西。 我正在提取Google的GData使用的ID。 我的例子string是 http://spreadsheets.google.com/feeds/spreadsheets/p1f3JYcCu_cb0i0JYuCu123 ID为: p1f3JYcCu_cb0i0JYuCu123 哦,我正在使用PHP。

从HTML内容中删除脚本标记

我正在使用HTML净化器(http://htmlpurifier.org/) 我只想删除<script>标签。 我不想删除内联格式或任何其他的东西。 我怎样才能做到这一点? 还有一件事,它有任何其他的方式来从HTML中删除脚本标签

包含至less8个字符,1个数字,1个大写和1个小写字母的javascript正则expression式

我想写一个正则expression式来validation密码,它必须符合下列条件: 至less包含8个字符 至less包含1个数字 包含至less1个小写字符(az) 包含至less1个大写字符(AZ) 仅包含0-9a-zA-Z 我尝试了以下,但似乎并没有工作。 http://jsfiddle.net/many_tentacles/Hzuc9/ <input type='button' value='click' class='buttonClick' /> <input type='text' /> <div></div> 和… $(".buttonClick").click(function () { if ($("input[type=text]").filter(function () { return this.value.match(/^(?=.*[0-9])(?=.*[az])(?=.*[AZ])([a-zA-Z0-9]{8})$/); })) { $("div").text("pass"); } else { $("div").text("fail"); } }); 有任何想法吗?

在flex / lex中的string文字的正则expression式

我正在尝试学习flex,并希望匹配string文字。 我的代码目前看起来像: "\""([^\n\"\\]*(\\[.\n])*)*"\"" {/*matches string-literal*/;} 我一直在挣扎一个小时左右的变化,不能按照它应该的方式工作。 我基本上希望匹配一个string文字,不能包含一个新行(除非它被转义),并支持转义字符。 我可能只是写一个可怜的正则expression式,或者与flex不兼容。 请指教!

模糊正则expression式

在我的工作中,我使用了近似的string匹配algorithm,如Damerau-Levenshtein距离,使我的代码更容易受到拼写错误的影响。 现在我需要匹配string对简单的正则expression式,例如TV Schedule for \d\d (Jan|Feb|Mar|…) 。 这意味着TV Schedule for 10 Jan的stringTV Schedule for 10 Jan应该返回0,而TV Schedule for 10 Jan T Schedule for 10. Jan应该返回2。 这可以通过生成正则expression式中的所有string(在本例中为100×12)并find最佳匹配来完成,但是这并不实际。 你有什么想法如何有效地做到这一点?

为什么大多数基于正则expression式的Javastring操作?

在Java中,有许多方法都是与操纵string有关的。 最简单的例子是String.split(“something”)方法。 现在许多这些方法的实际定义是它们都以正则expression式作为其input参数。 这使得所有非常强大的构build块。 现在有两种方法可以在许多方法中看到: 每次调用方法时都会重新编译expression式。 因此,他们施加了性能影响。 我发现,在大多数“现实生活”的情况下,这些方法被称为“固定”的文本。 split方法最常见的用法更糟糕:通常用单个字符(通常是“,”,“或”&“)来分隔。 所以这不仅是默认的方法是强大的,他们似乎也被压倒了实际使用的东西。 在内部,我们已经开发了一个“固定string”的“快速分裂”方法。 我在家里写了一个testing,看看如果知道它是一个字符,我能做多快。 两者都比“标准”拆分方法快得多。 所以我想知道:为什么现在selectJava API? 有什么好的理由,而不是像split(char)和split(String)和splitRegex(String)? 更新:我打了几个电话,看看分割一个string的各种方式需要多less时间。 简短的总结:这是一个很大的区别! 我为每个testing用例做了10000000次迭代,总是使用input "aap,noot,mies,wim,zus,jet,teun" 并始终使用“,”或“,”作为拆分参数。 这是我的Linux系统(这是一个Atom D510盒,所以它有点慢): fastSplit STRING Test 1 : 11405 milliseconds: Split in several pieces Test 2 : 3018 milliseconds: Split in 2 pieces Test 3 : 4396 milliseconds: Split in 3 pieces homegrown fast splitter […]

如何用JavaScript包装节点中的文本的一部分

我有一个具有挑战性的问题要解决。 我正在研究一个以正则expression式作为input的脚本。 这个脚本然后在文档中find这个正则expression式的所有匹配,并将每个匹配包装在它自己的<span>元素中。 最难的部分是文本是一个格式化的HTML文档,所以我的脚本需要浏览DOM,并一次性在多个文本节点上应用正则expression式,同时根据需要找出需要分割文本节点的位置。 例如,用一个正则expression式来捕获以大写字母开始并以句点结尾的完整句子,本文档: <p> <b>HTML</b> is a language used to make <b>websites.</b> It was developed by <i>CERN</i> employees in the early 90s. <p> 会变成这样: <p> <span><b>HTML</b> is a language used to make <b>websites.</b></span> <span>It was developed by <i>CERN</i> employees in the early 90s.</span> <p> 该脚本然后返回所有创build的跨度的列表。 我已经有了一些代码,可以find所有的文本节点,并将它们存储在一个列表中,以及它们在整个文档中的位置及其深度。 你并不需要理解代码来帮助我,它的recursion结构可能会有点混乱。 第一部分,我不知道该怎么做是找出哪些元素应该包含在范围内。 function SmartNode(node, depth, start) { […]

JSLint正则expression式中的“insecure ^”

JSLint报告不安全'^'为下面的行。 这是为什么? 还是只是想抱怨任何时候我想否定一个字符类? // remove all non alphanumeric, comma and dash characters "!$7s-gd,&j5d-a#".replace(/[^\w,\-]/g, '');