2017-02-21 84 views
-1

我的代码提供了以下错误:如何使用Regex检查字符串变量中是否存在一个字符串变量?

operator '||' cannot be applied to operands of type 'string' and'string'.

var searchEN = @"WEB BOOKING ID NUMBER:\s*([0-9]+)"; 
var searchIE = @"UIMHIR AITHEANTAIS ÁIRITHINTE GRÉASÁIN:\s*([0-9]+)"; 
var match = Regex.Match(item.Body.Text, searchEN || searchIE); 
+0

那你期待表达'searchEN || searchIE'的意思?也许你打算在它们中的每一个上调用'Regex.Match',并且取得结果的'OR'?这是非常不同的。 –

+2

从来没有用过c#,但是'var match = Regex.Match(item.Body.Text,searchEN)|| Regex.Match(item.Body.Text,searchIE)'? – user2141046

+0

@ user2141046该代码给出了这个错误:_Operator'||'不能应用于'System.Text.RegularExpressions.Match'和'System.Text.RegularExpressions.Match'_类型的操作数 – MadDev

回答

3

你可以简单地结合起来使用|运营商像两种模式:

string pattern = @"WEB BOOKING ID NUMBER:\s*([0-9]+)|UIMHIR AITHEANTAIS ÁIRITHINTE GRÉASÁIN:\s*([0-9]+)"; 
var match = Regex.Match(item.Body.Text, pattern); 

检查出来的结果在this link

相关问题