cclbc37 2021-06-14 20:11 采纳率: 81.8%
浏览 40
已结题

c# 正则表达式报错。

我特意去正则表达式网站测试了一下,没有错误啊,不知道为啥报错。翻译了一下错误是无效的模式在偏移量12无法识别的分组构造,看不懂一脸蒙蔽。

using System;
using System.Text.RegularExpressions;

namespace 图床中转
{
    class Program
    {
       static  void Main(string[] args)
        {
            string path = @"C:\Users\ZOHO\Desktop\图床中转\The test data\【CSS样式】—超详细+实践_winnieFighting-CSDN博客.md";
            string text = "";
            string pattern = @"!\[.*\]\((? !http | https).*\)";
            if (path == "")
            {
                Console.WriteLine("路径为空");
            }
            else
            {
                text = System.IO.File.ReadAllText(path);
                System.Console.WriteLine("Contents of WriteText.txt = {0}", text);
                GetPathPoint(text, pattern);

            }
        }

        /// <summary>
        /// 获取正则表达式匹配结果集
        /// </summary>
        /// <param name="value">字符串</param>
        /// <param name="regx">正则表达式</param>
        /// <returns></returns>
        static  float[] GetPathPoint(string value, string regx)
        {
            if (string.IsNullOrWhiteSpace(value))
                return null;
            Regex rgx = new Regex(regx);
            bool isMatch = rgx.IsMatch(value);
            if (!isMatch)
                return null;
            MatchCollection matchCol = Regex.Matches(value, regx);
            float[] result = new float[matchCol.Count];
            if (matchCol.Count > 0)
            {
                for (int i = 0; i < matchCol.Count; i++)
                {
                    result[i] = float.Parse(matchCol[i].Value);
                }
            }
            return result;
        }
    }
}
  • 写回答

3条回答 默认 最新

  • qq_39609936 2021-06-15 17:09
    关注

    把正则表达式前面的@去掉试一下

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月27日
  • 已采纳回答 9月19日

悬赏问题

  • ¥15 ghpython这里总是报错而且rhino视图窗口内不显示怎么办
  • ¥15 布尔运算推导,请证明
  • ¥15 有没有人会打学生成绩管理系统呀
  • ¥15 在使用Fiddler和夜神模拟器抓包的时候一直出现443该怎么办啊QAQ搜了好几个笔记都没有解决
  • ¥15 3x7的二维数组A、B、C,A中的任意1个数组元素与B的任意1个数组元素、同时又与C的任意1个数组元素比较,把不同位置出现相同数的比较称为无意义,反之称为有意义,把有意义的比较打印输出。
  • ¥20 预测模型怎么处理原始数据(随机森林)
  • ¥20 请问discuz3.5如何实现插入ckplayer全能播放器功能呢?
  • ¥15 thingsboard代码编译出错误
  • ¥15 博途v18仿真报错怎么解决
  • ¥15 欧姆龙plc枕式包装机 ST编程