DEMO:
/// <summary>
/// 获取字符串中多个匹配起止标志的字符串
/// </summary>
/// <param name="inputString"></param>
/// <param name="patternStart"></param>
/// <param name="patternEnd"></param>
/// <returns></returns>
public static List<string> GetMatchesWithoutStartEndFromString(string inputString, string patternStart, string patternEnd)
{
if (string.IsNullOrWhiteSpace(inputString))
return null;
/// 获取字符串中多个匹配起止标志的字符串
/// </summary>
/// <param name="inputString"></param>
/// <param name="patternStart"></param>
/// <param name="patternEnd"></param>
/// <returns></returns>
public static List<string> GetMatchesWithoutStartEndFromString(string inputString, string patternStart, string patternEnd)
{
if (string.IsNullOrWhiteSpace(inputString))
return null;
//定义正则表达式,解析得到 [ 与 ] 之间的内容,内容包括 [ 和 ]
string patttern = string.Format(@"({0}).*?({1})", patternStart, patternEnd);
string patttern = string.Format(@"({0}).*?({1})", patternStart, patternEnd);
//解析得到多个 [ 与 ] 之间内容,保存在 matches 中
List<string> listItems = new List<string>();
MatchCollection matches = Regex.Matches(inputString, patttern, RegexOptions.IgnoreCase);
foreach (Match m in matches)
{
listItems.Add(m.Value.Replace(patternStart, "").Replace(patternEnd, ""));
}
List<string> listItems = new List<string>();
MatchCollection matches = Regex.Matches(inputString, patttern, RegexOptions.IgnoreCase);
foreach (Match m in matches)
{
listItems.Add(m.Value.Replace(patternStart, "").Replace(patternEnd, ""));
}
return listItems;
}
}
/// <summary>
/// 获取字符串中单个匹配起止标志的字符串
/// </summary>
/// <param name="inputString"></param>
/// <param name="patternStart"></param>
/// <param name="patternEnd"></param>
/// <returns></returns>
public static string GetMatchWithoutStartEndFromString(string inputString, string patternStart, string patternEnd)
{
if (!string.IsNullOrWhiteSpace(inputString))
{
string patttern = string.Format(@"({0}).*?({1})", patternStart, patternEnd);
Match match = Regex.Match(inputString, patttern, RegexOptions.IgnoreCase);
if (match.Success)
{
return match.Value.Replace(patternStart, "").Replace(patternEnd, "");
}
}
/// 获取字符串中单个匹配起止标志的字符串
/// </summary>
/// <param name="inputString"></param>
/// <param name="patternStart"></param>
/// <param name="patternEnd"></param>
/// <returns></returns>
public static string GetMatchWithoutStartEndFromString(string inputString, string patternStart, string patternEnd)
{
if (!string.IsNullOrWhiteSpace(inputString))
{
string patttern = string.Format(@"({0}).*?({1})", patternStart, patternEnd);
Match match = Regex.Match(inputString, patttern, RegexOptions.IgnoreCase);
if (match.Success)
{
return match.Value.Replace(patternStart, "").Replace(patternEnd, "");
}
}
return string.Empty;
}
}
使用:
string strUserName = StringHelper.GetMatchWithoutStartEndFromString(inputString, ""UserName":", ",");
var regex = new System.Text.RegularExpressions.Regex(@"^d+$");
bool isMatch = regex.IsMatch(strUserName.Replace(""", "").Replace("'", ""));
if (!isMatch)
{ }
var regex = new System.Text.RegularExpressions.Regex(@"^d+$");
bool isMatch = regex.IsMatch(strUserName.Replace(""", "").Replace("'", ""));
if (!isMatch)
{ }