草庐IT

c# - 如何只从多行文本中提取第一行

如何使用正则表达式只获取多行文本的第一行?stringtest=@"justtakethisfirstlineeventhereissomemorelineshere";Matchm=Regex.Match(test,"^",RegexOptions.Multiline);if(m.Success)Console.Write(m.Groups[0].Value); 最佳答案 如果你只需要第一行,你可以不使用这样的正则表达式来完成varfirstline=test.Substring(0,test.IndexOf(Environmen

c# - 按 '/' 拆分,直到出现 '['

我想拆分以下类型的字符串:Parent/Child/Value[4za]AX/BY并通过以下方式创建一个String[]:String[]ArrayVar=Regex.Split(stringVar,"?");在第一次出现[之前将字符串按每个/拆分。所以我会得到Array[0]=>"Parent"Array[1]=>"Child"Array[2]=>"Value[4za]AX/BY"字符串也可以有其他格式,比如Parent/Value[4za]AX/BYValue[4za]AX/BY我该怎么做? 最佳答案 您可以使用正常的字符串操作

c# - 用于 URL 验证的正则表达式

我已经编写了正则表达式来验证URL,它可能是这样的google.comwww.google.comhttp://www.google.comhttps://www.google.com我用过RegexurlRx=newRegex(@"^(http|ftp|https|www)://([\w+?\.\w+])+([a-zA-Z0-9\~\!\@\#\$\%\^\&\*\(\)_\-\=\+\\\/\?\.\:\;\'\,]*)?$",RegexOptions.IgnoreCase);它适用于http和https。它不适用于google./com和www.google.com。请帮我解决这

c# - 正则表达式 - 在字符之前匹配模式

我目前正在用C#构建一个玩具组装器(正在阅读TheElementsOfComputingSystems书)。我需要匹配一个非常简单的模式,我认为这是学习一些正则表达式的好时机,但我正在努力!在下面的例子中,我只想匹配'='之前的字母M=AD=MMD=AA=D广告=MAMD=A我想出了以下内容:([A-Z]{1,3})=但是这也匹配我不想要的'='。我也试过:([A-Z^\=]{1,3})=但我仍然遇到同样的问题-它也匹配'='符号。我正在使用thissite测试我的正则表达式。任何帮助将不胜感激。提前谢谢你。 最佳答案 您想要的是所

c# - 如何以任意序列搜索模式?

正则表达式仅适用于字符串,但如果该功能不仅可以扩展到字符,还可以扩展到对象,甚至进一步扩展到函数,那会怎样呢?假设我们的对象是整数,它们可以按任何顺序排列:12345678910111213你要解决的任务是像这样找到素数对(或类似的模式搜索任务):{prime}{anyNumber}{prime}所以答案是这样的:(3,4,5)(5,6,7)(11,12,13)或者更复杂的素数链示例:{prime}({anyNumber}{prime})+回答:(3,(4,5),(6,7))(11,(12,13))很像Regex的工作方式,对吧?发生的事情是你定义了一些名为isPrime(x)的函数,

c# - 亵渎正则表达式不起作用

错误Notenough)'s.正则表达式亵渎字符串"[^!@#$%^&*]*(ahole|anus|ash0le|ash0les|asholes|ass|AssMonkey|Assface|assh0le|assh0lez|asshole|assholes|assholz|asswipe|azzhole|bassterds|bastard|bastards|bastardz|basterds|basterdz|Biatch|bitch|bitches|BlowJob|boffing|butthole|buttwipe|c0ck|c0cks|c0k|CarpetMuncher|cawk|

c# - 检查两个字符串是否共享相同的重复字符模式

是否有一个有效的正则表达式来断言两个字符串共享相同的重复字符模式。("tree","loaa")=>true("matter","essare")=>false("paper","mime")=>false("acquaintance","mlswmodqmdlp")=>true("tree","aoaa")=>false事件如果不是通过正则表达式,我正在寻找最有效的方式来执行任务 最佳答案 最简单的方法可能是同时手动遍历两个字符串并在您这样做时建立一个字典(匹配相应的字符):if(input1.Length!=input2.Len

c# - 检测正则表达式后的单词

我的文字很长,部分文字是Hello,iamJohnhow(1)are(are/is)you?我用它来检测(1)。stringoptionPattern="[\\(]+[0-9]+[\\)]";Regexreg=newRegex(optionPattern);但我被困在这里继续如何检测(1)之后找到are。完整代码(感谢falsetru让我走到这一步):stringoptionPattern=@"(?我假设如果我这样拆分,它会删除(0-9)之后的所有单词,但是当我运行它时,它只会删除最后一次检测中()之后的单词。如您所见,(7)之后的词消失了,但其余的没有。如何检测(1)之后的are?是

c# - DataAnnotations [Phone] 属性

[电话]属性的默认有效格式是什么?数据表中phone列为navrchar(16)如果我输入电话号码,如1112223333,我会收到“字段不是有效电话号码”。如果我输入01112223333,我会得到“值‘11112223333’无效。”另外,如何覆盖它?我知道我可以做这样的事情,但这是这种情况下的最佳做法吗?[RegularExpression(@"((\(\d{3}\)?)|(\d{3}-))?\d{3}-\d{4}",ErrorMessage="InvalidPhoneNumber!")]相关代码:[Required][Phone]publicstringPhone{get;se

C# 正则表达式验证电话号码

如果有人可以帮助我使用正则表达式来获取电话号码,那就太好了。以下是条件:如果出现+,那么它应该是第一个字符允许的字符是数字()空格-和.最少6个数字,最多12个(,)和空格可以出现在字符串的任何地方-不应该是第一个和最后一个字符,如果+存在,也不应该紧跟在+之后。以下是一些有效的数字:+93483227359+17033356512334565464001(703)332-6261+1703.338.6512+934-83227359(111)123-4567111-123-4567提前致谢 最佳答案 尝试:^\+?(\d[\d-.