Tag: regex

如何在匹配字符串之前找到一个单词

通过堆栈溢出问题,但没有得到正确的答案。 我需要在匹配字符串之前和之后使用单独的正则表达式。 1)找到一个特定的短语/单词后的单词 (这个工作正常) var regex = new Regex(@”(?:” + mytext + @”\s)(?\b\S+\b)”); 2)在特定短语/单词之前找到单词 (不起作用) var regex = new Regex(@”(?:\S+\s)?\S*” + mytext + @”\b\S”); mytext的= “XYZ” 输入=“这是abc xyz defg” 输出应该是这样的 1)首先,这是工作 xyz defg 2)第二,这是行不通的 abc xyz

在C#中validationFQDN

有没有人有正则表达式来validation合法的FQDN? 现在,我使用这个正则表达式: (?=^.{1,254}$)(^(?:(?!\d+\.|-)[a-zA-Z0-9_\-]{1,63}(?!-)\.?)+(?:[a-zA-Z]{2,})$) 然而,当“aa.aa”有效时,此正则表达式导致“aa.a”无效。 有谁知道为什么?

C#正则表达式模式难题

我有一个正则表达式,我已经在3个单独的源中validation为成功匹配所需的文本。 http://regexlib.com/RETester.aspx http://derekslager.com/blog/posts/2007/09/a-better-dotnet-regular-expression-tester.ashx , http://sourceforge.net/projects/regextester/ 但是,当我在我的代码中使用正则表达式时。 它不会产生匹配。 我已使用其他正则表达式与此代码,他们已导致所需的匹配。 我很茫然…… string SampleText = “starttexthere\r\nothertexthereendtexthere”; string RegexPattern = “(?<=starttexthere)(.*?)(?=endtexthere)"; Regex FindRegex = new Regex(@RegexPattern); Match m = FindRegex.Match(SampleText); 我不知道问题是我的正则表达式还是我的代码。

如何防止JavaScript中的循环导致浏览器或应用程序崩溃?

我正在使用JavaScript在Windows 8.1 App中创建一个实时编辑器。 几乎完成了,但问题是每当我运行这样糟糕的循环或function,然后它会自动挂起或退出。 我用一个循环测试它,如:(它只是一个例子 – 用户可以用自己的方式编写它的循环..) for(i=0;i<=50000;i++) { for(j=0;j<5000;j++){ $('body').append('hey I am a bug’); } } 我知道这是任何应用程序或浏览器处理这种循环的最糟糕情况。 所以在这里我希望如果用户使用这样的循环然后我如何处理它,以产生他们的输出? 或者,如果它不能保护我的应用程序的那种循环,如果它对我的应用程序是危险的,所以我提醒用户: 运行此代码段可能会导致应用崩溃! 我有一个想法,如果代码有类似for(i=0;i<=5000;i++)东西,使用正则表达式检查代码然后上面的警告将显示,如何为此做一个正则表达式? 也可以包含C#作为后端 。

从SQL查询中获取参数名称

后端是PostgreSQL服务器9.1。 我正在尝试构建AdHoc XML报告。 报告文件将包含SQL查询,所有这些查询都必须以SELECT语句开头。 SQL查询将包含参数。 根据相关列的数据类型,这些参数将相应地呈现给用户以提供值。 一个重要的SQL查询: SELECT * FROM customers WHERE ( customers.customer_code=@customer_code AND customers.location=@location AND customers.type= ( SELECT type from types WHERE types.code=@type_code AND types.is_active = @type_is_active ) AND customers.account_open_date BETWEEN @start_date AND @end_date ) OR customers.flagged = @flagged; 我想从查询字符串中获取列名和参数的列表,并将它们放入字符串数组中并稍后处理。 我能够使用以下正则表达式仅匹配参数: @(?)(?\w+) 预期比赛: customers.customer_code=@customer_code customers.location=@location types.code=@type_code types.is_active = @type_is_active customers.account_open_date BETWEEN @start_date AND […]

正则表达式贪心问题(C#)

我有一个输入字符串,如“=== text ===和=== text ===”,我想用相应的html标签替换wiki语法。 输入: ===text=== and ===text=== 理想输出: text and text 但是使用以下代码我得到这个输出: var regex = new Regex(“—(.+)—“); var output = regex.Replace(“===text=== and ===text===”, “$1”); text=== and ===text 我知道问题是我的正则表达式与贪婪相匹配。 但是如何让他们不贪心。 谢谢你,亲切的问候。 丹尼

正则表达式和冒号(:)

我有以下代码。 这个想法是检测整个单词。 bool contains = Regex.IsMatch(“Hello1 Hello2″, @”\bHello\b”); // yields false bool contains = Regex.IsMatch(“Hello Hello2″, @”\bHello\b”); // yields true bool contains = Regex.IsMatch(“Hello: Hello2″, @”\bHello\b”); **// yields true, but should yield false** 似乎正则表达式忽略了冒号。 如何修改代码,使最后一行返回false?

正则表达式只在左侧贪婪(.net)

我试图捕获两个字符串之间的匹配。 例如,我正在寻找Q和XYZ之间出现的所有文本,使用“最快”匹配(不继续向外扩展)。 这个字符串: 马戏团问你好Q SOMETEXT XYZ今天是XYZ好的XYZ日 应该返回: Q SOMETEXT XYZ 但相反,它返回: 问你好Q SOMETEXT XYZ 这是我正在使用的表达式: Q。*?XYZ 它向左走太远了。 当我在星号后使用问号时,它在骑行方面工作正常。 我怎么能在左侧做同样的事情,并在我第一次离开Q后停下来,让它与右侧的工作方式相同? 我已经尝试过来自http://msdn.microsoft.com/en-us/library/az24scfc.aspx的问号和其他符号,但有些东西我只是想不通。 我是一个正则表达式的新手,所以对此有任何帮助将不胜感激!

Linq中的Regex(EntityFramework),数据库中的字符串处理

我的表中有一列包含值的列 “FilterA:123,234,34;FilterB:12,23;FilterC:;FilterD:45;” filter由’;’分隔 并且每个filter的值由’,’分隔。 Filter的名称和值之间有一个’:’。 现在,我可以做任何只能取出值部分的东西吗? 像“FilterA”的“123,234,34”。 或者我可以给它一个像“234”这样的数字来搜索“FilterA”的值部分和/或“FilterB”的值部分中的“54”吗? 我知道使用正则表达式是可能的,我猜,但我不知道怎么做。

替换为通配符

我需要一些建议。 假设我有以下字符串: Read Variable我想在字符串中找到这样的所有文本片段,并使它们全部如下所示: Variable = MessageBox.Show 。 作为附加示例: “Read Dog” –> “Dog = MessageBox.Show” “Read Cat” –> “Cat = MessageBox.Show” 你能帮助我吗? 我需要在C#中使用RegEx快速建议。 我认为这是一项涉及通配符的工作,但我不知道如何使用它们…而且,我明天需要这个用于学校项目…谢谢! 编辑:这是我到目前为止所做的,它不起作用: Regex.Replace(String, “Read “, ” = Messagebox.Show”) 。