Tag: regex

查找大写第一个字母的单词,这些单词组合在一起

我正在尝试在字符串中找到单个或组合在一起的单词。 例如: This is a String That is my example, Here Is More text as example. 我想拿出来,所以我的结果如下。 This String That Here Is More 到目前为止我的正则表达式是这样的 (\b[AZ][az]*\s\b) 这会找到大写单词,但只将它们分开包含空格。 如何控制正则表达式连续接受1到3个单词,用大写字母 ?

正则表达式匹配一切但是

我想创建一个正则表达式来匹配字符串中的每个单词,空格,标点符号和特殊字符,除了特定的关键字或短语。 因为我只能修改正则表达式,而不是服务器代码我必须使用匹配而不是替换。 到目前为止,我有类似的东西: (?!(quick|brown|fox|the lazy))\b\w+但它忽略了此工具中的空格和特殊字符 谢谢。

在平衡字符内搜索特定文本(递归

给出以下(消毒)输入: Return_t func() { Type cursorFeature(true); while (nDist derefenced, MACRO) != 0)) { bIsChanged = true; break; } memcpy(&var, &cursorFeature->dereferenced, sizeof(anotherType_t)); } } //more stuff } } 我有以下正则表达式捕获使用Type后发生的循环 Type.*\s*(\w*)[^}]*?(?:while|for)\s*\(.*?\n?.*?(\{(?>[^{}]|(?-1))*\}) https://regex101.com/r/Kr0zQq/3 我还有以下正则表达式,它捕获Type变量的特定用法: Type.*\s*(\w*)[\s\S]*?\K(?|\+\+) https://regex101.com/r/Kr0zQq/4 我的目标是以某种方式将这些结合起来,最好是组合成一个正则表达式(如果可能的话,我希望能够在VS内部进行搜索)。 鉴于递归正则表达式的性质,我不确定这是否可能……而且我怀疑它不是。 如果没有,那么在搜索数百个文件时不会失去文件名/数字上下文的聪明的东西会很棒。 我基本上需要文件名和行号。 上下文很棒,但不是必需的。 为了澄清,我想捕获cursorFeature因为它的类型为Type ,然后我想在”loop”{…..}搜索它的使用 编辑 只是关于我使用正则表达式解决这个问题的说明。 被搜索的代码超过一百万行,跨越由各种编译器编译并由多个构建系统构建的多个项目。 例如,使用宏和高级语言function意味着甚至VS Intellisense 经常错误地编写VS能够编译的代码。 和YCM(vim)一样。 因此,一个可能过于贪婪的正则表达式,即70%的误报是好的。 (由于缺少循环中变量使用的进一步发生,因为在那一点上通常很容易扫描其余部分。)然而,尝试使用“通用”PCRE作为单行进行这可能是愚蠢的。 🙂

正则表达式匹配有效的命名空间名称

我以前曾经问过这个问题,但是我试过谷歌,但没有找到答案。 也许我使用了错误的关键字 是否可以使用正则表达式来匹配有效的C#名称空间名称? 更新: 感谢大家的答案和研究! 这个问题比我预期的要复杂得多。 正如Oscar Mederos和Joey指出的那样,有效的命名空间不能包含C#保留关键字,并且可以包含比拉丁字母多得多的Unicode字符。 但是我当前的项目只需要在语法上validation名称空间。 所以我接受了primfaktor的答案,但我对所有答案都赞不绝口。

正则表达式获取字符串中的十进制值

由于我是C#开发人员,我也会接受C#答案。 可以说我有这个字符串:“R 560.00” 有一个Alpha字符和一个带小数值的空格。 我们也可以在字符串上有引号。 但我想要的是只获取字符串中的Decimal值。 应删除所有其他字符。 注意:String.Replace不能正常工作,这就是我转向Regex的原因。 这是我尝试过的:fields(amountIdx)将包含R560.00 Dim regex As New Regex(“^[0-9]+(\.[0-9]{1,2})?$”, RegexOptions.IgnoreCase) Dim amount As String = regex.Replace(fields(amountIdx), “^[0-9]+(\.[0-9]{1,2})?$”) 但金额反映为R 560.00。 它不会删除其他字符。 我怎么能做到这一点?

XPath使用C#中的正则表达式匹配()

更新:我写了我做了什么,包括源代码和需要注意的事项, – 在.NET XPath (我的博客)中添加XPath 2.0function和变量 。 有没有办法将正则表达式传递给.NET中XPath语句的matches()? 示例:执行xpath “/windward-studios/Employees/Employee[matches(string(LastName), ‘.*A?B[12]C.*’)]”

C#正则表达式替换url

我在文档中有一堆链接,必须用javascript调用替换。 所有链接看起来都一样: Document naam 1 Document naam 2 Document naam 3 现在我希望将所有这些链接替换为: Document naam 1 Document naam 2 Document naam 3 因此,url中的Id = 3D是函数中的第一个参数,doc参数是函数调用中的第二个参数。 我想使用Regex这样做,因为我认为这是最快捷的方式。 但问题是我的正则表达式知识太有限了

密码的正则表达式

我不是很擅长正则表达式。 我需要执行以下操作来validation用户输入的密码是否正确。 标准: 必须至少包含一个数字 必须至少包含来自AZ或az的一个字母(只要输入的字母无关紧要)。 密码必须至少为8个字符

求一些C#RegEx帮助

我正在尝试创建一个RegEx表达式,它将成功解析以下行: “57” “testing123” 82 16 # 13 26 blah blah 我想要的是能够识别行中的数字。 目前,我正在使用的是: [0-9]+ 解析得很好。 然而,如果数字是引号,如果“57”是或者像“testing123”那样,它变得棘手,我不希望它匹配。 除此之外,哈希符号后面的任何内容(’#“),我都不想在哈希符号之后匹配任何东西。 所以在这个例子中,我应该得到的匹配是“82”和“16”。 没有别的东西可以匹配。 任何有关这方面的帮助将不胜感激。

数字范围和字符的正则表达式

我需要一个正则表达式,它匹配数字(大于5,但小于500)和数字后面的文本字符串的组合。 例如,以下匹配将返回true:6个项目或450个项目或300个项目红色(“项目”一词后面可能有其他字符) 以下字符串将返回false:4个项目或501个项目或40个红色项目 我尝试了以下正则表达式,但它不起作用: string s = “Stock: 45 Items”; Regex reg = new Regex(“5|[1-4][0-9][0-9].Items”); MessageBox.Show(reg.IsMatch(s).ToString()); 谢谢你的帮助。