Tag: 正则表达式

具有多重重复的正则表达式

我现在很难用正则表达式。 我能够在Regexbuddy中调试正则表达式但不知何故它在C#.net中不起作用。 例如。 我的输入字符串: – –8W1_805_431____0210_A01_0002_L–;%{PE}%R 8.2.24,%MKUKATPBASIS,%CCOMMENT,%VNORMAL,%P 2: –8W1_805_431____0210_A01_0002_L– ;ENDFOLD ;FOLD PTP SG003920 Vel=100 % PDAT5 ServoGun=8 Cont=OPN Part=2.65 mm WeldTimer=WTDAT1 Tool[1]:zc1 Base[1]:510wz1;%{PE}%R 4.1.25,%MKUKATPSERVOTECH,%CSpotTC,%VPTP,%P 1:PTP, 2:SG003920, 3:, 5:100, 7:PDAT5, 9:1, 11:1, 13:OPN, 15:2.65, 18:1, 21:0, 24:0, 27:5, 30:0, 33:WTDAT1 $BWDSTART=FALSE PDAT_ACT=PPDAT5 FDAT_ACT=FSG003920 BAS(#PTP_PARAMS,100) EG_SPOT_POINT_NAME[]=”SG003920″ EG_EXTAX_ACTIVE=EG_SERVOGUN_EXAXIS[1] EG_THICKNESS=2.65 EG_GUN_FORCE=1 EG_COMP_HELP=0 EG_COMPENSATE_PATH=0 EG_PROGRAM_NUMBER=003920 EG_HELPPOINT=EG_CHTIP(XSG003920) PTP EG_HELPPOINT EG_APPROX_OPEN=FALSE CMD=#SPOT […]

使用xml名称空间前缀C#搜索XML元素

更新 我想要一个表达式(XPath,或类似的Regex表达式),它可以将XML元素与特定的命名空间相匹配。 例如,我想找到链接元素的值(例如,我需要http://url within http://url)如下所示。 但是,名称空间前缀根据不同的xml文件而有所不同,如案例1-3所示。 考虑到名称空间前缀允许的字符(例如,任何字符允许/有效),任何人都可以提供解决方案(XPath,正则表达式或类似的? 请注意,因为xml文件是未知的,所以命名空间和前缀在运行时之前是未知的。 这是否意味着我不能使用这个XDocument / XmlDocument,因为它需要在代码中知道命名空间。 更新 情况1 http://url 案例2 http://url 案例3 http://url 请注意,link元素中的url可以是任何http url,并且在运行时之前是未知的。 更新 请标记我的问题。

从XML名称标记中删除无效字符 – RegEx C#

我有一个带有xml数据的字符串,我从Web服务中提取。 数据很丑陋,并且在xml的Name标签中有一些无效的字符。 例如,我可能会看到类似的东西: Scott the CoderMy address 地址名称字段中的#无效。 我正在寻找一个正则表达式,将从名称标签中删除所有无效字符但是将所有字符保留在xml的Value部分中。 换句话说,我想使用RegEx仅从开头名称标签和结束名称标签中删除字符。 其他一切都应该保持不变。 我还没有所有无效的字符,但这会让我开始:#{}&() 有可能做我想做的事吗?

在C#中使用正则表达式匹配复数

我希望在C#中使用正则表达式来搜索术语,我想在搜索中包含这些术语的复数forms。 例如,如果用户想要搜索“管道”,那么我也想返回“管道”的结果。 所以我可以这样做…… string s =”\\b” + term + “s*\\b”; if (Regex.IsMatch(bigtext, s) { /* do stuff */ } 当用户输入“压力”并仍然为“管道”/“管道”工作时,我如何修改上述内容以允许我匹配“压力”?

如果长度大于String的长度,则子串不按预期工作

好的,我知道如果/其他工作,我需要一个替代方案。 我在用 B = String.Concat(A.Substring(0, 40)); 捕获值的前40个字符。 如果A处的值大于40 ,则B能够捕获,但如果A的值小于40 ,则在B处没有捕获值。

RegEx用于替换除数字之外的所有字符

如果我有一个包含数字的数据字符串。 这种模式不一致。 我想从字符串中提取所有数字,只提取一个被定义为允许的字符。 我认为RegEx可能是最简单的方法。 你可以提供一个可以做到这一点的正则表达模式,因为我认为正则表达式是伏都教而只有正则表达式的医学人知道它是如何工作的 例如/ “Q1W2EE3R45T” = “12345” “WWED456J” = “456” “ABC123” = “123” “N123” = “N123” //N is an allowed character 更新 :这是我的代码: var data = Value.Split(new char[] { ‘,’ }, StringSplitOptions.RemoveEmptyEntries); data = data.Select(x => Regex.Replace(x, “??????”, String.Empty)).ToArray();

在C#中使用RegExvalidation浮点数

我想在WPF中创建一个只有Numeric的TextBox ,我有这个代码: void NumericTextBox_PreviewTextInput(object sender, TextCompositionEventArgs e) { e.Handled = !IsValidInput(e.Text); } private bool IsValidInput(string p) { switch (this.Type) { case NumericTextBoxType.Float: return Regex.Match(p, “^[0-9]*[.][0-9]*$”).Success; case NumericTextBoxType.Integer: default: return Regex.Match(p, “^[0-9]*$”).Success; } } // And also this! public enum NumericTextBoxType { Integer = 0, Float = 1 } 当我将类型设置为Integer时,它运行良好,但对于Float,它没有。 我可以在那里使用这么多NumericTextBox控件,但我想知道为什么这个不起作用?

c#字符串以正则数字开头

我一直在寻找一下如何确定一个以数字开头的字符串。 我遇到了一个正则表达式声明’/ ^ \ d /’我可以确认是否以数字开头。 但是我似乎无法在下面的代码中使用它。 任何人都可以指出我在声明中出错的地方(Regex.Match(info,“/ ^ \ d /”))? 谢谢! //String attachbody is the attachment body from an email i read into a string string[] data = Regex.Split(attachbody, “\n”); foreach (String info in data) { if (Regex.Match(info,”/^\d/”)) { string[] tabbedHeaderData = Regex.Split(info, “\t”); TicketID = tabbedHeaderData[0].ToString(); Status = tabbedHeaderData[1].ToString(); URL = tabbedHeaderData[2].ToString(); […]

如何删除字符串的已定义部分?

我有这个字符串:“NT-DOM-NV \ MTA”如何删除第一部分:“NT-DOM-NV \”结果如下:“MTA” RegEx怎么可能?

搜索RegEx以将文本拆分为单词

我正在寻找一个RegularExpression来分割文字。 我测试过了 Regex.Split(text, @”\s+”) 但这给了我一些例子 this (is a) text. and this (is a) text and 但是我寻找一个解决方案,它只给出了单词 – 没有(,),. 它也应该拆分文本 end.begin 用两个字说。